More than a dozen fire trucks were battling a major blaze on board a ship in Lyttelton.
Emergency services were called to the fire at 5.40pm.
The 60m ship was on dry dock at the Port of Lyttelton, fire communications shift manager Riwai Grace said.
Special units and 13 firetrucks from all over Christchurch and surrounding areas were called in the fight the fire.
"We have no idea how long it's going to take to extinguish - it's a good one," Mr Grace said.
There had been no reports of people on board the boat.
Mr Grace said he hadn't been told if any buildings close by were being threatened by the flames.
The Lyttelton tunnel had been closed to all vehicles except emergency vehicles.
The cause of the fire was not yet known, he said.
Loud bangs that Lyttelton residents thought were fireworks rang out before a blaze engulfed the hold of a tuna trawler last night.
Up to 60 firefighters and 16 appliances battled for 12 hours overnight to extinguish the fire on board the 60 metre fishing ship, Ocean Breeze.
They all donnedbreathing apparatus after discovering the trawler was leaking ammonia.
The toxic gas is still leaking from the vessel this morning and three fire crews and a command unit are still at the Stark Bros Ltd dry dock at Godley Quay.
Firefighters in oxygen masks are using a gas axe to cut a hole in the front hull of the ship.
They will try to remove its ammonia reserves which are used to refrigerate the ship.
Representatives of the ship's owners will reportedly go aboard shortly to survey the extent of the damage and the ammonia leak.
Southern fire communications centre shift manager Brent Dunn said an investigation is underway, and two fire safety officers are on the scene to establish the cause.
No one was on board the vessel before the fire started at around 5.30pm yesterday.
Environment Canterbury (Ecan) has been notified of the leak, and it's business as usual for the rest of Lyttelton Port.
Lyttelton Tunnel was initially closed last night to all but emergency vehicles, but is now open.
Amateur photographer Aaron Campbell raced over to Lyttelton from his Christchurch home when he heard of the blaze last night.