take a look at portreviews and you find many informations.
We have done the cruise last year with the Jewel OTS. It was wonderful, but for may a little bit too cold.
All citys offers shuttle transport to the centrum, behalve St. Petersburg.
For St. Petersburg itīs neccessary to book a tour, because you must have a visa, if you will doing it on your own.
Helsinki, Stockhol, Tallin and Copenhagen are wonderful cities and you can walk around by yourself.
The scandinavian capitals also offer sightseeing busses for really cheap prices. They are standing at the pier. You can hop of the bus, make your sightseeing and then hop in the next bus.
For Tallin we got a free shuttle to the center and here everything is in walking distance and this old town is worth to explore everything by foot.