A German-registered tanker ran aground on the Danube, spilling several hundred liters of heating oil into the river, Austrian shipping police said on Monday.