The blast occurred at Rheinmetall Denel Munition (RDM) depot, a joint venture between Germany’s Rheinmetall Defence and South Africa’s state-owned arms maker Denel.
“I can confirm that eight people are dead,” said Theo Layne, a fire and rescue spokesman.
The cause of the blast was not known, he said.
Police could not be reached to comment.
RDM said in a statement that an explosion occurred at one of its buildings, but it could not confirm whether there were any injuries or fatalities.
“We are currently investigating the matter,” it said.
RDM manufactures and supplies selected munitions and explosive related products for armed and police forces in South Africa and around the world.
Rheinmetall holds a 51 percent stake and Denel has a 49 percent shareholding.