A huge blast has occurred on an oil tanker in a South Korean port, sparking a raging fire that spread to a nearby vessel and left 18 people injured.

Key points: Eighteen people were injured by the blaze on the two ships in the port in Ulsan

Eighteen people were injured by the blaze on the two ships in the port in Ulsan Something in the tanker's cargo is believed to have caused the explosion

Something in the tanker's cargo is believed to have caused the explosion All 25 people on the tanker and the 21 people on the second ship were rescued

A ball of fire shot up high above the ship and thick black smoke billowed into the air, dramatic footage of the incident on Saturday show.

Firefighters struggled to contain the blaze and prevent it spreading, shooting streams of water up onto the deck from beside the vessel in the south-east port of Ulsan.

All 25 of those on board the Cayman Islands-flagged tanker and the 21 people on the second ship have been rescued, according to the South Korean coast guard.

Twelve sailors and six rescue workers were injured, Yonhap news agency said, quoting local authorities. Nine of the injured were South Korean.

The huge blast spread to a nearby cargo ship in the port of Ulsan. ( AFP: Yonhap )

The Russian vice-consul in Busan said the tanker crew comprised 10 Russians, including the captain, and none had been seriously injured.

"Some received medical help on the spot, but no Russian has been hospitalised," Evgeny Evdokimov was quoted by the Russian news agency Tass as saying.

"There were no repairs or loading operations underway on the ship at the time of the explosion.

"It is obviously something in the cargo that caused the explosion and the fire."

The coast guard said the cause of the blast was being investigated.

Space to play or pause, M to mute, left and right arrows to seek, up and down arrows for volume. Watch Duration: 32 seconds 32 s Emergency service crews worked to rescue sailors from the ships and to put out the blaze.

AFP