Niclas Eliasson then came close twice in quick succession, but Eddie Howe's side broke the deadlock on the quarter-hour mark through Joshua King, who drove forward and rifled home from the edge of the area.
The hosts upped the tempo after conceding and managed to draw level shortly before half time as Jack Hunt's cross was turned back across goal and converted by Andreas Weimann, who headed in at the back post.
Bournemouth set about trying to get back ahead after the break as Defoe was denied for the second time by a last-ditch challenge by Joe Bryan, who picked up an injury and limped off a few minutes later.
At the other end, Weimann nodded a header just past the post from a pinpoint cross from Eliasson, while Mohamed Eisa also came close to getting on the scoresheet shortly after coming on, but in the end, both sides had to settle for a draw.
BRISTOL CITY: O'Leary, Hunt (Pring 67'), Baker, Webster, Bryan (Pisano 53'), Paterson (Eisa 67), Pack (Walsh 76'), Brownhill, Eliasson, Taylor (K. Smith 46'), Weimann (Diedhiou 67')
BOURNEMOUTH: Begovic, A. Smith, Mings, S. Cook, B. Smith (Dobre 84'), Pugh, L. Cook, Surman, Ibe, King, Defoe (Mahoney 73')