An Indian navy submarine has caught fire after an explosion and sunk at a port in Mumbai.

Navy spokesman Narendra Vispute said efforts were being made to ascertain the safety of about 18 navy personnel on the diesel-powered submarine.

It submerged at its berth in the naval dockyard early Wednesday with only a portion visible above the surface.

He said an explosion on the submarine caused a major fire. The cause is being investigated.

Indian media reports say the 16-year-old Russian-made submarine, INS Sindhurakshak, had recently returned from Russia after undergoing an overhaul and upgrade.