Gmina Buk is an urban-rural gmina (administrative district) in Poznań County, Greater Poland Voivodeship, in west-central Poland. Its seat is the town of Buk, which lies approximately 28 kilometres (17 mi) west of the regional capital Poznań.
The gmina covers an area of 90.32 square kilometres (34.9 sq mi), and as of 2006 its total population is 11,917, of which the population of Buk is 6,181, and the population of the rural part of the gmina is 5,736.