Alaska Airlines  provides two daily jet flights, and various float plane and air charters also serve the area.
One of the charms of Petersburg is that it doesn't have a deep water port, so it's not accessible by big cruise ships, but some smaller ships stop there. The Alaska Marine Highway provides regular ferry service.
There is a local taxi and some local shuttle services. The local roads are also nice for bicycling, although the size of the island limits the overall distance one can travel.
Because Petersburg doesn't have a deep water port it doesn't get the large cruise ships, thus it isn't overrun with the large cruise line operated tourist shops that plague many such coastal towns. There are a few little locally owned galleries with local artists, and a bookstore with some nice coffee table books, but most of the town actually exists for the local population.