We used this company and they were awesome. https://www.santorinidailytours.com/all-of-santorini-in-6-hours-private/
It covered a lot of the Island including Oia, the beaches, a winery etc and finishes in Fira. And of course, with the commentary of the guide. It has gone up in price a lot.. but hasn't everything and hey, how often do you get to go to Santorini!! 🙂
If I could have changed it.. I would do the same tour.. but see if he could drop you in Oia at the end so that you had more time there. And then catch a bus back to Fira to get back to the ship.