Ronaldo had missed the past six internationals after Portugal were knocked out in the World Cup last 16.
Ukraine keeper Andriy Pyatov made two strong saves to deny Ronaldo and also kept out Andre Silva's curling effort. Portugal had 18 shots in Lisbon while Ukraine managed just two.
William Carvalho thought he had put Portugal in front with a close-range header after 16 minutes but it was ruled out for offside. There was also a penalty appeal from the hosts in stoppage time when substitute Dyego Sousa appeared to be bundled over in the box as he tried to get on the end of Ronaldo's low cross.
Portugal will host Serbia on Monday in Lisbon. Luxembourg beat Lithuania 2-1 in Friday's other Group B match.
The top two teams from each group qualify for the Euro 2020 finals but if Portugal were to miss out, they are guaranteed a play-off place after reaching the Nations League semi-finals.