Mayor Vincent Gray said there was no indication it was a terrorist attack. But he said the possibility had not been ruled out.
It was the deadliest shooting at a military installation in the U.S. since Maj. Nidal Hasan killed 13 people and wounded more than 30 in 2009 at Fort Hood in Texas. He was convicted last month and sentenced to death.
President Barack Obama lamented yet another mass shooting in the U.S. that he said took the lives of American "patriots." He promised to make sure "whoever carried out this cowardly act is held responsible."
The FBI took charge of the investigation and identified the gunman killed in the attack as 34-year-old Aaron Alexis of Texas. He died after a running gunbattle inside the building with police, investigators said.
At the time of the rampage, Alexis was working in information technology with a company that was a Defense Department subcontractor.
Authorities said he may have had a badge that enabled him to get onto the base, but they were still investigating.
Alexis was a full-time Navy reservist from 2007 to early 2011, leaving as a petty officer third class, the Navy said. It did not say why he left. He had been an aviation electrician's mate with a unit in Fort Worth, Texas.
Alexis had had run-ins with the law over shooting incidents in 2004 and 2010 in Fort Worth and Seattle and was portrayed in police reports as seething with anger.
Witnesses on Monday described a gunman opening fire from a fourth-floor overlook, aiming down on people on the main floor, which includes a glass-walled cafeteria. Others said a gunman fired at them in a third-floor hallway.
Patricia Ward, a logistics-management specialist, said she was in the cafeteria getting breakfast.
"It was three gunshots straight in a row — pop, pop, pop. Three seconds later, it was pop, pop, pop, pop, pop, so it was like about a total of seven gunshots, and we just started running," Ward said.
In addition to those killed, more than a dozen people were hurt, including a police officer and two female civilians who were shot and wounded. They were all expected to survive.
Police would not give any details on the gunman's weaponry, but witnesses said the man they saw had a long gun — which can mean a rifle or a shotgun.
The Washington Navy Yard is a sprawling, 41-acre labyrinth of buildings and streets protected by armed guards and metal detectors, and employees have to show their IDs at doors and gates. More than 18,000 people work there.
The rampage took place at Building 197, the headquarters for Naval Sea Systems Command, which buys, builds and maintains ships and submarines. About 3,000 people work at headquarters, many of them civilians.
Todd Brundidge, an executive assistant with Navy Sea Systems Command, said he and co-workers encountered a gunman in a long hallway on the third floor. The gunman was wearing all blue, he said.
"He just turned and started firing," Brundidge said.