Interesting that you ask this question here, while it really isn't a Tridion related question (it would belong at https://superuser.com/, https://askubuntu.com, or equivalent), but I guess that is my opinion.
The answer is depending on your Linux distribution, but in general you can add the startup script to /etc/rc.local
.
You can also create a full init script yourself and place that in /etc/init.d/
, which is a lot more work.
And the dirtiest solution I can think of would be to set a crontab for this
#crontab -e
@reboot /home/user/microservice/start.sh
after every startup it will run the start script.