Installing a Linux distro on a USB stick is as easy as installing it on a normal HDD / SDD.
Making that Linux work well on that USB stick was quite hard, as there is little or no information on the Internet.
Note: booting and running Linux from a USB stick will be slow and it will most likely shorten the life of your USB stick in the long run.
My setup consisted of a i7 Lenovo laptop and a 128GB Kingston HyperX Savage USB 3.0, which supposedly has 350MB / 250MB sequential read / write speed.
I chose Ubuntu 19.10 ISO netboot, which I flashed using Rufus on another USB 2.0 stick.
The following bash commands were run under root user after I successfully installed Ubuntu 19.10 on the 128GB Kinston HyperX Savage USB 3.0 stick.