You are not permitted to download, save or email this image. Visit image gallery to purchase the image.
Amla, who was 90 not out when the stumps were drawn early because of bad light, put on 136 in an unbeaten third wicket stand with Jacques Kallis (84 not out) after openers Graeme Smith (10) and Alviro Petersen (64) were dismissed either side of the lunch break.
Australian seamer Peter Siddle was left rueing missed chances after his no ball gave Kallis a life on 43 and he dropped a catch off his own bowling that would have sent Amla back to the dressing room with 74 runs.
The home side had hoped the bowling attack which destroyed India's vaunted batsmen last year would do the same with the South Africans but the fireworks from James Pattinson, Ben Hilfenhaus and Siddle failed to materialise.
"We wanted to really put our peg in the ground and I think we did that really well," said Petersen.
"Two wickets down, we're in a comfortable position but tomorrow's going to be really important, to back that up and make sure today's work doesn't go to waste."
Amla, the world's top-ranked batsman, signalled his intent early in the day with a soaring six off spinner Nathan Lyon and coolly paced his innings, easing up when the quicks got into their stride and opening up against anything loose.
The 29-year-old put on 90 for the second wicket with Petersen before the opener threw away his wicket by wafting a shot for Mike Hussey to catch at mid-on off Lyon's bowling halfway through the second session.
Picking up his 5000th test run along the way, Amla reached his 24th test half century before tea and, Siddle's dropped catch apart, it looked like only the gathering clouds would stop him reaching his 17th test century.
The evergreen Kallis had designs on the milestone himself after racing to his 56th test half century in just 63 balls, reaching the mark with a sublime cover drive.
The all rounder rode his luck, though, when he ballooned a catch to Lyon only for the umpire to call him back to the crease after TV replays showed Siddle had failed to keep his front foot behind the line.
Australia had earlier benefited from the TV appeal system to dismiss Smith lbw when a Pattinson delivery caught the South African skipper's trailing leg but umpire Billy Bowden declined to raise his characteristic crooked finger.
South Africa won the toss and chose to bat, which looked like a good decision after the wicket and overcast conditions failed to produce the sort of swing and movement off the pitch the seamers had hoped for.
"Definitely a long day," said Pattinson. "It wasn't the Gabba wicket that we were used to. It was a bit slow and there was no sideways movement.
"You can make excuses but we probably lacked a bit of penetration and a bit of consistency and our maiden count was the big thing.
"When it's not playing as much as you would like, you probably want to dry up the runs a bit as we probably didn't do that."
Whether South Africa's other big decision of the morning - to drop spinner Imran Tahir and give a debut to Rory Kleinveldt as part of a four-pronged pace attack - proves a good one was put into doubt when JP Duminy was injured after close of play.
Duminy, who was expected to support the pacemen with his off spin, hurt his left ankle in a fall while training on the pitch and had to be helped off before being taken to hospital for a scan.
South Africa's number one test ranking is on the line in the series, which continues with matches in Adelaide and Perth after Brisbane.
Australia - Michael Clarke (captain), David Warner, Ed Cowan, Rob Quiney, Ricky Ponting, Mike Hussey, Matthew Wade, Peter Siddle, Ben Hilfenhaus, James Pattinson, Nathan Lyon.
South Africa - Graeme Smith (captain), Alviro Petersen, Hashim Amla, Jacques Kallis, AB de Villiers, Jacques Rudolph, JP Duminy, Vernon Philander, Dale Steyn, Morne Morkel, Rory Kleinveldt.