But Russian defence ministry spokesman Igor Konashenkov said at a daily briefing on Sunday the air strike had targeted only Ukrainian military facilities.
“In the seaport in the city of Odesa, on the territory of a shipyard, sea-based, high-precision, long-range missiles destroyed a docked Ukrainian warship and a warehouse with Harpoon anti-ship missiles supplied by the US to the Kyiv regime,” he said.
The Ukrainian military said Moscow had attacked Odesa’s port with four cruise missiles on Saturday, two of which had been shot down by air defences.
Command spokeswoman Nataliya Humenyuk said no grain storage facilities were hit in Odesa, but Turkey’s defence minister said Ukrainian authorities had told him one missile struck a grain silo and another landed nearby. However, neither affected loading at Odesa’s docks.
It is not clear how the air strikes will affect the plan to resume shipping Ukrainian grain by sea in safe corridors out of three Ukrainian Black Sea ports – Odesa, Chernomorsk and Yuzhny.
Ukraine and Russia signed identical deals on Friday with the United Nations and Turkey in Istanbul backing the plan, which UN Secretary-General Antonio Guterres hailed as “a beacon of hope” for a world in which food prices are rising rapidly.
The head of Mr Zelensky’s office, Andriy Yermak, said on Twitter on Saturday the Odesa strike, coming so soon after the endorsement of the Black Sea deal, illustrated “the Russian diplomatic dichotomy”.
Mr Guterres’s office said the UN chief “unequivocally condemns” the strikes.
Ukrainian Foreign Ministry spokesman Oleg Nikolenko said: “It took less than 24 hours for Russia to launch a missile attack on Odesa’s port, breaking its promises and undermining its commitments before the UN and Turkey under the Istanbul agreement.
“In case of non-fulfilment, Russia will bear full responsibility for a global food crisis.”