How do I make my audio tracks match the volume of one track that has plenty of dynamics?

I am recording a song and the instrumental has a lot of very loud parts and a lot of very soft parts. I could use normalization or compression, but I don’t want to touch the instrumental or make the whole vocal track the same volume. Is there a way to make the volume of the vocal tracks go up and down based on the instrumental track?

Envelope follower. Steve’s Dynamic-Mirror plugin can do that.

Not possible with the built-in ones?

You could do it with the built-in Envelope tool: Envelope Tool - Audacity Manual
(but that will take much more time and effort than using my Dynamic-Mirror plugin).