First Minister Mark Drakeford said pubs would also have to close at 6pm under the new rules, but can still serve takeaways after 6pm.
The restrictions will come into force on Friday 4 December at 6pm and be reviewed on 17 December.
The Welsh Government wants to make sure the rate of infection does not rise in the run-up to Christmas, when rules on socialising in private homes will be relaxed for a short period.
"This is a virus that thrives on human contact," the First Minister said.
He added: “This virus - and this pandemic - continues to be full of unpleasant surprises. It thrives on our normal human behaviour and all those places and opportunities where we come together.
“It underlines why we need to take further, targeted action now. We will focus these changes on places where we meet and where coronavirus thrives, drawing on recent evidence from the UK SAGE group of experts about what interventions have had the biggest impact on the virus."
The alcohol ban is similar to rules in place in parts of Scotland.
Welsh pubs were closed for a 17-day period in the nation's 'firebreak' lockdown and were allowed to reopen on 9 November.
Hospitality businesses had worked hard to comply with rules, the First Minister said. "I am very grateful for everything the sector has done," Drakeford added.
Drakeford promised a further £180m in support for tourism, leisure and hospitality businesses, including grants of £3,000-5,000 for hospitality businesses hit by the new rules.
He described the financial support package as "the most generous package of financial assistance anywhere in the UK". This funding is to be delivered by local authorities.
Indoor entertainment venues including cinemas, bingo halls, bowling alleys, soft play centres and casinos will be forced to shut from Friday.
More to follow.