There are regular buses from Portimão to Monchique (the mountains), Lagos and Silves.
However, be aware that the quayside is about 1,5 km from the town centre where the buses leave from.
Have a look at Cubsur's website:
http://www.algarvebus.info
where you wil find full details on Algarve bus services.