You will not need a passport if you are a U.S. citizen traveling directly to and from the U.S. Virgin Islands because it is a U.S. territory, just like Puerto Rico, Guam and American Samoa. If you are traveling to or from the British Virgin Islands, you will need a valid passport because these islands are not a U.S. territory.
If you are on a cruise that stops at other Caribbean destinations, Mexico, Canada, the Bahamas or Bermuda, you will need a valid birth certificate and a photo ID (such as a driver's license) to re-enter the states. However, it is suggested that you carry a valid passport in case of emergency or a mishap that may cause you to fly in or out of the United States and other countries. When traveling by land and sea, valid proof of citizenship as mentioned above is fine, but when traveling by air, you must have a passport.
When traveling to the U.S. Virgin Islands, permanent residents (residents with a green card showing their status as a U.S. resident) must have valid passports from their country of citizenship and also have their green cards. Non-U.S. citizens must have a valid passport and, in some cases, must have a visa. Travelers should check with their consulate and the American consulate to verify document requirements for travel.