Cannon City is an unincorporated community in Rice County, Minnesota, United States approximately 5 miles northeast of Faribault. A plank road connected the cities in 1857. It has since been paved. The town is home to approximately 100 people, and is served by a small community church.
A creamery and a small grocery store were once present, but have been closed for decades. The creamery is presently under renovation by a private party.
The town of Cannon City was the original model for Metropolisville in the novel The Mystery of Metropolisville by Edward Eggleston
Due to a quirk of zoning ordinance, Cannon City has once again seen housing starts beginning in 2001 after decades without new construction.