I am looking for a command line tool (currently using macOS) that allows me to run multiple long running commands but triggered by a single command. I ideally want to also see the logs from each of these commands + handle things like errors/restarts.
A simplified use case is the following: I'm locally developing an API and UI. I want to be able to run an API service, a related DB and a build tool to automatically compile the UI.
I have tried a couple of options to this:
- Use docker compose to specify each command in a separate container. While this works for the case above, it becomes quite heavy handed when I want to add simple commands to the list of things I want to run.
- Just opening a bunch of terminal windows and running each command. The problem here is that it's a little hard to know what is outputting logs at any given point. It's also easy to forget to run something when restarting.
Both these options feel like they're a bit finicky. My ideal setup is to setup a single config file with my commands, then run a single command.
Does such a thing exist?