Of the 42 people on board, 17 were evacuated, with five in stable condition in hospital, according to state broadcaster CCTV. The cause of the fire remains unclear.
The ship had arrived in Qingdao on August 31 for repairs at the Qingdao Beihai Shipbuilding yard, part of the state-controlled China State Shipbuilding Corporation, the world's largest shipbuilder. The 190-metre (623-foot) vessel is flagged to Liberia, according to tracking site MarineTraffic.
Images from state news agency Xinhua showed thick plumes of smoke rising from the vessel. An eyewitness told the AFP news agency there was thick smoke but he heard no explosion.
Chinese President Xi Jinping called for intensified search and rescue efforts and a swift investigation, urging regions and departments to "draw profound lessons from this incident" and "thoroughly investigate and rectify all types of fire hazards." Premier Li Qiang stressed the need to rescue "trapped" people and "strictly prevent secondary disasters."
The fire comes nearly a month after a shipyard explosion in the southeastern province of Fujian killed a rescue worker and injured 12 others. Qingdao is one of the world's busiest ports and a major trading hub.