As mentioned above, the ports are full of touristy shops ("discounted" diamonds, stuff made in China, etc). If you look carefully at each shop, you can find some that are run by people who live in Alaska and sell Alaska merchandise, but they don't have the big flashy signs.
Skagway has a pretty small town, but has a museum, a couple parks and an old train that you can walk around and look at. However, the train ride that goes up the mountain is fantastic. You could take the train and still have lots of time to walk the town.
Ketchikan does have Creek Street to walk around, but it's not impressive enough to warrant a full day. I walked that area and some other areas and still had an excursion afterward. You could walk around Creek St and the town and still have time to catch a log show or the duck tour if you want to add one at the last minute.
In Juneau you can take the tramway up the mountain. It's really nice up there if you enjoy hiking and views. We had a light rain the whole time we were up there and ended up not spending as much time as we wanted to. You can also buy a bus ticket to the Mendenhall Glacier where you can walk around a lot. I didn't spend anytime walking around in the port in Juneau other than to walk through it to go to a cafe. The cheap Tshirt stores and "discount" diamond stores are a really big turn off for me. When I go to Alaska, I want nature.