An explosion caused by a fire in a weapons storage in the Iraqi capital has fired off rockets to neighboring districts, killing at least four people.