Every city must produce two food per turn per citizen* or that city will experience starvation (where one citizen dies). Luckily, most citizens labor in the areas around their city, yielding some combination of food, shields, and commerce, and feeding themselves in the process.
In some cases, a citizen produces more food than he needs and the excess is put into his city's food storage box each turn. When it is full, the storage is emptied and the city grows, adding one citizen to its population.
Food production fundamentally depends upon the terrain within the city radius, because citizens laboring there produce food. When the City Display is open, you can see what the citizens are producing.
There are exceptions where citizens do not consume food. Resisting citizens do not consume food and citizens in a town experiencing civil disorder do not consume food until the civil disorder ends.
In other cases, a city does not grow enough food to sustain its population, so food is drawn out of the storage box to make up the shortfall. If the storage box is empty and the city has a granary, food will then be removed from the granary. If a city cannot feed its population either from new production or stored food, one of its citizens starves and disappears.