More than 500 passengers have been evacuated after a small fire erupted on a cruise ship off Puerto Rico's north coast.

The blaze broke out in the engine room of the Caribbean Fantasy, a combination cruise and ferry vessel, before spreading to other parts of the vessel on Wednesday.

Police officer Aurelis Colon said the ship docked safely in Puerto Rico, with the US Coast Guard deploying a mass-rescue craft to take passengers safely to the San Juan harbour.

Puerto Rican authorities tweeted pictures showing smoke rising from the stricken vessel.


A video, apparently shot by someone on board, shows passengers and crew in life jackets waiting on the ship.

No injuries have been reported and no one is missing, Coast Guard spokesman Ricardo Castrodad said. It is not clear what caused the fire.

CBC News reported there were 512 passengers and crew on the ship, which was about 1.5 kilometres from San Juan Harbour when the fire broke out, according to the US Coast Guard.

The ships run several times weekly between Puerto Rico and the Dominican Republic and was arriving in San Juan when the fire broke out, Castrodad said.