Check with your cellular carrier to see if it offers a cruise ship plan. Though it might not be cheap, it will be less expensive than international roaming charges. For example, AT&T offers packages priced at $30 for 50 minutes of phone calls, $60 for 50 minutes of calls and 100 texts, and $120 for the $60 plan with an additional 100MB of cellular data. Or, if you don't mind waiting to get to port to use your phone, you can opt for a land-based package such as T-Mobile's international service plan, which offers calls at $0.20 per minute, unlimited roaming and free texts in more than 140 countries.
Tip: Beware when you’re connected to "Cellular at Sea" or another at-sea provider; you’ll be hit with roaming charges of a hefty $2 a minute and, in many cases, more.