Government offices and essential services, such as hospitals, pharmacies and grocers, will be open during the lockdown, which starts on Monday night.
The city had imposed a weekend curfew, but reported its highest single-day spike so far on Sunday - 24,462 cases.
India has been reeling from a deadly second wave since the start of April.
Delhi Chief Minister Arvind Kejriwal said the city had almost run out of beds at hospital intensive care units (ICUs) and that oxygen was in short supply.
"I have always been against lockdowns, but this one will help us amplify the number of hospital beds in Delhi," he told a virtual press conference on Monday.
He also appealed to the city's migrant workers not to leave - last year's national lockdown saw millions of them heading back to their villages after they found themselves unemployed and running out of money.
"This was a difficult decision to take but we had no other option left," Mr Kejriwal said. "I know when lockdowns are announced, daily-wage workers suffer and lose their jobs. But I appeal to them to not leave Delhi. It's a short lockdown and we will take care of you."
Crematoriums in the area are also overwhelmed, reports the BBC's Rajini Vaidyanathan in Delhi. Distressing images showed bodies being burnt on the pavement, outside one on the outskirts of the capital.
One in three people in Delhi is testing positive.