The ferry carrying 140 passengers smashed into a breakwater late Friday in the port of Las Palmas, the capital of Spain's Canary islands off the northwest coast of Africa.
Thirteen people were injured and the crash damaged underwater fuel pipes, the regional government said in a statement. Video footage on Spanish television showed chunks of concrete falling onto the port.
Emergency crews managed on Saturday to collect half of the roughly 60,000 litres (16,000 gallons) of diesel that spilled into the ocean, the regional government said.
Three coast guard boats were on Sunday working to break up the slick -- which is three kilometres long and half a kilometre wide -- to help the diesel evaporate, it added.
"Work on the spill is continuing and we hope that it will have evaporated before Monday. Experts do not believe there is risk to the environment," Fernando Clavijo, the president of the regional government, said in a tweet.
Se sigue trabajando en el vertido y esperamos que antes del lunes se haya evaporado. Los técnicos no creen que haya peligro medioambiental.— Fernando Clavijo (@EquipoClavijo) April 22, 2017
Beaches around Las Palmas and Telde, the two main towns on Gran Canaria, would be closed on Sunday as a precaution, the regional government said.
Repairing the pier will cost around two million euros ($2.1 million) and take six months, it added.
Ferry operator Naviera Armas said the accident was caused by a technical fault that sparked a power cut on the boat.