Ukrainian President Petro Poroshenko says his troops are holding the line against separatists and Russian forces, amid a surge in violence.
His words come despite Donetsk airport being reduced to a burnt out shell and Ukrainian forces withdrawing from the main terminal.
“If we, Ukrainian units, had held Donetsk airport, pro-Russian fighters would have had to agree with our position and demilitarise a significant part of the city, therefore removing the danger from densely populated areas,” said Kostyantyn Mashkovec, a military expert.
Sixteen Ukrainian soldiers are said to have been taken hostage at the airport.
Some were paraded in front of furious residents at the scene of a bus attack in Donetsk.
At least eight people died in the shelling, which Ukraine blamed on separatists.
Russia said the attack was a “crude provocation” by Kiev to undermine peace efforts.
The conflict in eastern Ukraine has killed more than 4,700 people since April, according to United Nations’ estimates.