MARIUPOL, Ukraine—Thunderstorms hovering over the Sea of Azov caught the setting sun, turning orange and then pink. A cool end-of-day breeze kicked up.

Later Sunday night in downtown Mariupol when the artillery started, the booms and flashing lights over the rooftops looked like lightning and sounded like thunder.

To the trained ear, however, the sounds of artillery are easily distinguished from those of thunder. Artillery rumbles in shorter, higher treble pulses. After living with war on their doorstep for more than a year, the citizens of Mariupol—an industrial city of 500,000 on the Sea of Azov—can easily detect the difference.

Combined Russian-separatist forces launched an artillery and rocket attack on several small villages on Mariupol’s periphery Sunday night. Electricity flickered in the city center, while the sounds of explosions lasted from 10 p.m. until about 11 p.m.

The attack destroyed houses and caused civilian casualties. As of Monday morning, local authorities reported two civilians killed and six wounded, as well as more than 50 homes damaged. The Ukrainian military reported no killed or wounded soldiers.

A statement from the 0629 news site (which covers Mariupol) read: “A child with a ripped off foot was taken by an ambulance to town hospital No. 3. Two other residents, one missing an arm, another one missing a leg, were admitted to town hospital No. 4. Several civilians managed to walk to hospitals on their own and requested medical assistance.”

A later statement said the body of a young woman was also found near the attack area.

Initial reports indicated that a rocket attack caused the civilian casualties, although the overall attack also comprised heavy artillery up to 152-mm, according to Ukrainian National Guard soldiers in the area.

Notably, Sunday’s attack occurred in a section of Mariupol’s outlying neighborhoods through which an advancing combined Russian-separatist force would avoid a bridge crossing over the Kal’mius river, which divides Mariupol in two. That bridge, where the present-day M14 road crosses the river, was the scene of a protracted Red Army defense against Nazi invaders in 1941 during World War II.

A combined Russian-separatist advance on Mariupol from nearby Shyrokyne would have to cross the river along M14, while an offensive from a more northerly direction—such as from Sartana, a location of Sunday night’s attack—would bypass the river crossing altogether, allowing for an encirclement of the city from the north.

Ukrainian military and intelligence officials stationed in Mariupol say that a combined Russian-separatist offensive would likely involve an attack from the north to surround the city, which, if successful, would force defending Ukrainian forces backed up against the Sea of Azov into a Dunkirk-like retreat.

The Ukrainian military is dug in around Mariupol, however, and is much better equipped and trained than one year ago, when it successfully repelled a separatist tank attack on the city’s outskirts in the days and hours leading up to the first cease-fire on Sept. 5.

One Ukrainian soldier, speaking on condition of anonymity due to security concerns, said taking Mariupol would be “impossible.”

“The Ukrainian army is ready to fight, many to the death,” he said. “It would be a real war if the separatists attacked.”

Life as Usual

Monday morning in Mariupol, life went on as usual, underscoring the battle-hardened resiliency of the population in this industrial seaside town that has endured the threat of war for more than a year.

Fighting raged in the streets in May and June 2014, when Ukrainian forces retook the city from pro-Russian separatists. And in September 2014, tank battles on the city’s outskirts (comprising about 30 combined Russian-separatist tanks, according to Ukrainian military reports) rattled windows in the city center.

And in January 2015, a separatist Grad rocket hit a civilian neighborhood, killing 29.

Yet the early July withdrawal of combined Russian-separatist forces from Shyrokyne spurred reluctant optimism that the war could be drawing down.

On Sunday evening, hours before the deadly attack, the mood in Mariupol was festive. In Mis’kyi Garden, which overlooks the Sea of Azov on a bluff, families attended an outdoor play, couples pushed strollers, and children were riding bikes and rollerblading. The coarse sand beaches on the Sea of Azov down below were filled with sunbathers. Young adults played beach volleyball and a group of boys were taking turns diving off the end of a pier. Beachside cafés were full. Patrons in bathing suits and flip-flops dined on calamari and Greek salad (a specialty in Mariupol due to the large Greek population) and drank Stella Artois.

Yet, like the gathering thunderheads over the Sea of Azov throughout the afternoon, the war loomed in the distance. Although it is difficult to detect in their outward behavior, in private conversations, residents admit they are afraid. Many have the trunks of their cars packed with clothes and important documents, ready to flee if things fall apart.

An ‘Explosive’ Situation

Sunday’s attacks were the latest in a recent escalation of fighting in eastern Ukraine, which has lasted for more than a week. A Ukrainian military spokesman said Sunday that the fighting was at its highest levels in more than six months since the Feb. 12 cease-fire.

In a Sunday newspaper interview, German Foreign Minister Frank-Walter Steinmeier said, “The situation in eastern Ukraine is explosive.”

“There is a lot at stake,” he added. “If both parties in the conflict don’t return to the peace process, a new military escalation spiral could be triggered at any time.”

On Friday, according to the Ukrainian military, combined Russian-separatist forces violated the cease-fire a record 175 times, including: 25 artillery attacks, 64 mortar attacks, 19 BM-21 Grad rocket launcher attacks, and 93 small arms and rocket-propelled grenade attacks.

According to the Ukrainian military, combined Russian-separatist forces also attacked Ukrainian positions 136 times on Aug. 15 and 148 times on Aug. 16.

Two Ukrainian soldiers died Sunday.

The escalation in the war’s intensity has spurred Mariupol’s residents to oppose a proposal by Ukrainian President Petro Poroshenko to establish a 30-kilometer-wide “buffer zone” along the line of contact between Ukrainian and combined Russian-separatist forces.

They are particularly fearful of Ukrainian abdication of control over nearby Shyrokyne as part of a larger demilitarization plan. Residents also question the logistics of the move, since Mariupol lies in the middle of where the proposed buffer zone would exist.

In the park in front of Mariupol’s destroyed city administration building (which separatists torched in 2014) protesters against the buffer zone proposal have set up an encampment. Tents are plastered with signs, such as “No to the demilitarization of Shyrokyne.”

Even in Kyiv, protesters on the Maidan, the city’s central square, recently rallied against the demilitarization of Shyrokyne and the buffer zone proposal.

One Kyiv protestor held a sign that read: “No to demilitarization. Yes to impeachment.”

Poroshenko recently pushed back against claims that he was abandoning Mariupol.

“The ‘buffer zone’ does not include Mariupol,” he said, according to a Ukrainska Pravda report. “Each unit remains at its location. Only heavy artillery and MLRS are withdrawn, which will be returned upon conflict escalation.”

“So here is a separate message for Mariupol residents: The president is with you, the army is with you, do not listen to those who panic,” he added.

While taking Mariupol would be a challenge for combined Russian-separatist forces without overt Russian intervention (such as air support), Mariupol is still a primary target, according to some experts.

“Any Russian offensive in southeastern Ukraine would probably be much harder for the Russians than the ones last year, and they were not easy, as the Ukrainians have been preparing for further Russian moves furiously since the end of the battle of Debaltseve,” said Andrew Fink, a national security analyst based in Kyiv.

“If the Russians are going to try another actual offensive,” he added, “what propaganda I’ve read suggests that the most likely target for any big offensive is still the obvious one—Mariupol.”

The Next Night

The mood is calm at a seaside café (across from a beach named Santa Barbara) on Monday night. There is another storm over the Sea of Azov, catching the setting sun like the night before. The late afternoon sea breeze rustles tree branches.

Beneath the café is a road that parallels the coast. Sometimes, the stereo bass from a passing car sounds like the percussion from distant artillery, provoking, just for an instant, the question: “Has it started again?”

In Mariupol—a European city in 2015—one thinks about such things.