One of those two dead was the gunman, who police said died of a suspected self-inflicted gunshot wound.
It happened around 1:30 p.m. at the grocery store at 240 New Byhalia Road.
Brignetta Dickerson, who said she's worked at the store for nearly 33 years, said she was beginning to ring up a customer when gunshots rang out.
"It first started in the deli," said Dickerson. "I heard some gunshots. We thought it was balloons popping."
Dickerson quickly realized it was gunshots and began running along with other employees and customers.
"We ran to the back of the store by the meat department," she said.
They were met by other fleeing customers.
"I told them, 'Y'all come on, let's hurry,'" she said.
As they headed to a hiding space, Dickerson said the gunman came up behind her.
"Here he comes right behind us and starting shooting," she said.
A co-worker was shot in the head, and a customer was shot in the stomach, the woman said.
The man who was shot in the head was alert and asked for someone to call his mother, Dickerson said.
At one point, the shooter left and then came back inside, she said.
Dickerson said she played dead to save her life.
She said she was shaky, but otherwise OK after the shooting.
"I've got God on my side and I'm OK," she said.
Twelve people were transported from the scene to area hospitals -- some with "very serious" injuries, according to Collierville Police Chief Dale Lane. At least two other people were taken to the hospital in private vehicles. One of those was treated for anxiety and not gunshot wounds, Lane said.
Police have not released the name of the suspected gunman, or of the victim killed in the shooting. A source tells ABC24's Brad Broders that the gunman was an employee of the store who had been fired earlier in the day. Police have not confirmed that.
Kroger said the store would remain closed as authorities investigate the shooting. Counseling will be made available for employees.