Russia’s Vladimir Putin announced a cease-fire in Ukraine for three days next month, the second time in less than two weeks the Russian president has called a halt to fighting without committing to a long-term end to the conflict.

The announcement came a day after President Trump asked Russia and Ukraine “to stop the shooting” and do a deal to end the war. In recent days, Trump has been increasingly critical of Moscow, which has slow-walked the U.S. administration’s effort to reach a peaceful settlement of the conflict.

The Kremlin said military actions would be suspended beginning on May 8 just after midnight and until the end of May 10, to mark the celebrations commemorating the end of World War II.

Over Easter, Putin declared a short-lived and poorly adhered-to 30-hour cease-fire after Trump said he would walk away from peace talks if progress wasn’t made toward an end to the fighting.

Ukraine in March agreed to a U.S.-backed unconditional 30-day cease-fire, which Putin declined. Moscow has since put conditions on pausing the fighting, including the lifting of sanctions, which Ukraine wouldn’t agree to.

The Kremlin said that it was ready for peace talks, “aimed at eliminating the root causes of the Ukrainian crisis.” Referring to the “root causes” is Russian shorthand for attempts to integrate Ukraine with the West and the North Atlantic Treaty Organization’s military presence in Eastern Europe, indicating that Moscow hasn’t relinquished its maximalist demands in the negotiations.

The U.S. has proposed a cease-fire plan that would see Washington recognize Russia’s control over Crimea, the Ukrainian peninsula Russian forces invaded in 2014.

Write to Georgi Kantchev at georgi.kantchev@wsj.com