have a look at the LT3080 datasheet. Lots of application circuits including a lab power supply. Also you can adjust this down to 0V, whereas with most regulators they only go down to 1.2V: https://cds.linear.com/docs/Datasheet/3080fc.pdf
You'll need either a switching regulator or low dropout regulator if you want your output voltage to swing to your input voltage.
Also bear in mind that if you have a 2 amp load with 12 volts input and 3 volts output you'll be dissipating around 18 watts of power so you'll need a reasonable sized heatsink if you're going for a linear regulator.
Here is a design for a good lab supply that swings the output voltage down to zero and has adjustable current limit level. LED indicates when in current mode.