A Dominican admiral said strong winds had caused the 326m (1,070ft) -long Norwegian Escape to ground as it left Puerto Plata.
It took more than seven hours for the Norwegian Cruise Line ship to be freed.
The Norwegian Escape returned to port for checks. No passengers or crew were harmed in the incident.
A spokesperson for Norwegian Cruise Line said the Norwegian Escape "made contact with the channel bed as it was departing Puerto Plata".
Passengers described hearing "a loud thud" when it ran aground and some said the ship was listing.
Tugboats tried to free the boat but failed, so the decision was made to wait for high tide.
Some of the passengers posted updates of the situation on social media.
The ship is one of the biggest in Norwegian Cruise Line's fleet. Local media said The Norwegian Escape was on its way to the US Virgin Islands and the British Virgin Islands.