The bill, passed late on Saturday, means churches will no longer be able to use Communion wine.
It has provoked anger in the Christian community. Most of the country's shops selling alcohol are run by Christians and their business depends on the trade.
A fine of up to 25 million Iraqi dinars, or (£17,160), will be issued for anyone violating the ban.
Islam forbids the consumption of alcohol, but it has always been available in Iraq's larger cities from shops run by Christians.
The ban was proposed by Mahmoud al-Hassan, a judge and MP from the State of Law coalition, the largest bloc in parliament.
It was not expected to pass, but the Iraqi parliament made the shock announcement on its website.
The post did not say how many MPs voted for or against it.
Christian politician Joseph Slaiwa is quoted in the National Post as calling it an "unjust" ban.
"This ban is unconstitutional, as the constitution acknowledges the rights of non-Muslim minorities and ethnic groups who live alongside Muslims in Iraq.
"To those Muslim lawmakers I say, take care of your religion and leave ours for us, we know how to deal with it."
Christians in the country are expect to appeal the ban in the country's Supreme Court.