Both finance minister Rishi Sunak and health minister Sajid Javid resigned in what appeared to be a choreographed release of letters to the prime minister, in which both took aim at his ability to run an administration that adhered to standards.
The resignations came as Johnson was apologising for what he said was a mistake for not realising that former whip Chris Pincher was unsuitable for a job in government after complaints of sexual misconduct were made against him.
"In hindsight, it was the wrong thing to do. I apologise to everyone who's been badly affected by it," Johnson told broadcasters.
Both Sunak and Javid had formerly publicly supported Johnson during months of scandal over his administration's conduct and a damning report into parties at his Downing Street office and residence that broke strict COVID-19 lockdown rules.
Sunak, who had reportedly clashed with the prime minister in private about spending, said: "For me to step down as Chancellor while the world is suffering the economic consequences of the pandemic, the war in Ukraine and other serious challenges is a decision that I have not taken lightly."
"However, the public rightly expect government to be conducted properly, competently and seriously. I recognise this may be my last ministerial job, but I believe these standards are worth fighting for and that is why I am resigning."
Javid said many MPs and the public had lost confidence in Johnson's ability to govern in the national interest.
"I regret to say, however, that it is clear to me that this situation will not change under your leadership - and you have therefore lost my confidence too," Javid said in a letter to Johnson.
The PA news agency said an ally of Foreign Secretary Liz Truss, viewed as a potential leadership candidate, said she was "100 per cent behind the PM".
Deputy Prime Minister Dominic Raab and Home Secretary Priti Patel are not expected to quit.
A source close to Raab told PA he was "loyal" to Johnson while an ally of Patel said "she's staying".
with AP and PA