At the break, Markram was batting on 51 not out, while Dean Elgar was unbeaten on 26 runs as the duo made good use of an easy-paced pitch here after skipper Faf du Plessis won the toss and elected to bat.
Opening the innings, Elgar and Markram started watchfully against the new-ball pairing of Jasprit Bumrah (0-25) and Mohammed Shami (0-23).
Shami looked off-colour in his first spell once again, just like in Cape Town, conceding 23 runs off his four overs.
The new ball bowlers failed to create any chances, and Ishant Sharma (0-12) came on as first-change in the 8th over. He immediately troubled Elgar and continued to do so throughout his first spell.
Hardik Pandya (0-15) too didn't trouble the batsmen after coming on to bowl in the 13th over. By the 20th over, when R Ashwin (0-2) was introduced into the attack, India had used up all their frontline bowlers in just over an hour's play.
The visitors continued searching for some help off the wicket, but none was forthcoming. Bumrah bowled an ordinary second spell and was taken for runs as Elgar looked more comfortable at the crease.
Ashwin too probed Elgar, and in the 24th over, had a caught-behind appeal turned down. India opted for DRS review but there was no edge.
Earlier, the hosts made one change, handing a Test debut to 21-year-old pacer Lungi Ngidi at his home ground. He came in the side in place of injured Dale Steyn.
India made three changes to their eleven, with KL Rahul replacing Shikhar Dhawan and Ishant Sharma coming in for Bhuvneshwar Kumar, the latter on account of batsmen-friendly wicket.
Wriddhiman Saha was ruled out due to a strain and Parthiv Patel was included as a replacement wicketkeeper.