Russian missiles have hit Ukraine’s strategically important southern city of Odessa, threatening a landmark deal signed hours earlier to unblock grain exports from Black Sea ports and ease global food shortages caused by the war.

The deal signed on Friday by Moscow and Kyiv, and mediated by the United Nations and Turkey, was hailed as a breakthrough after nearly five months of punishing fighting since Russia invaded its neighbour. 

It is seen as crucial to curbing soaring global food prices by allowing grain exports to be shipped from Black Sea ports, including Odessa.

UN officials had said on Friday they hoped the agreement would be operational in a few weeks. 

Two Russian Kalibr missiles hit infrastructure at the Odesa port, while another two were shot down by air defence forces, Ukraine’s Operational Command South wrote on the Telegram messaging app.

“In the context of what is currently happening with Ukrainian grain, the strike was carried out exactly where the grain is,” Yuriy Ignat, a spokesman for the Ukrainian air force, said.

The cruise missiles were fired from warships in the Black Sea near Crimea, he said.

A Russian defence ministry statement on Saturday did not mention any strike in Odessa. The ministry did not immediately reply to a request for comment.

The strike appeared to violate the terms of Friday’s deal, which would allow safe passage in and out of Odessa and two other Ukrainian ports.

UN Secretary General Antonio Guterres “unequivocally condemned” the reported strikes, an official said, adding that all parties had committed to the grain export deal.

“These products are desperately needed to address the global food crisis and ease the suffering of millions of people in need around the globe,” spokesman Farhan Haq said in a statement.

“Full implementation by the Russian Federation, Ukraine and Turkey is imperative.”

On Friday, Guterres had called the deal “a beacon on the Black Sea”.

Ukraine has mined waters near its ports as part of its war defences, but under the deal pilots will guide ships along safe channels.

A Joint Co-ordination Centre (JCC) staffed by members of all four parties to the agreement will monitor ships transiting the Black Sea to Turkey’s Bosphorus strait and off to world markets.

All sides agreed on Friday there would be no attacks on these entities and it would be the task of the JCC to resolve any prohibited activity.

Ukraine foreign ministry spokesman Oleh Nikolenko said on Facebook “the Russian missile is (Russian President) Vladimir Putin’s spit in the face” of Guterres and Turkish President Tayyip Erdogan, adding Ukraine was grateful for the lengths they had gone to to reach the agreement.

The foreign ministry called on the United Nations and Turkey to ensure Russia fulfils its commitments.

The US ambassador to Kyiv, Bridget Brink, called the strike “outrageous”, writing on Twitter, “The Kremlin continues to weaponize food. Russia must be held to account”.

A blockade of Ukrainian ports by Russia’s Black Sea fleet since Moscow’s February 24 invasion has trapped tens of millions of tonnes of grain and stranded many ships.

This has worsened global supply-chain bottlenecks and, along with Western sanctions on Russia, stoked food and energy price inflation.

Russia and Ukraine are major global wheat suppliers, and the war sent food prices soaring. 

A global food crisis has pushed some 47 million people into “acute hunger,” according to the World Food Programme.

Friday’s deal seeks to avert famine in poorer nations by injecting more wheat, sunflower oil, fertiliser and other products into world markets.

UN officials said on Friday the deal, expected to be fully operational in a few weeks, would restore grain shipments from the three reopened ports to pre-war levels of five million tonnes a month.

Moscow has denied responsibility for the food crisis, blaming Western sanctions for slowing its own food and fertiliser exports and Ukraine for mining the approaches to its own Black Sea ports.

Ukrainian President Volodymyr Zelenskiy said on Friday the deal would make around $US10 billion ($A14 billion) worth of grain available for sale with roughly 20 million tonnes of last year’s harvest to be exported.