I am new to Julia. I am looking for a Process Manager for It, specifically for Genie Apps. (In the other words, something equivalent to PM2 for Node.JS). Could anyone help please?
Adrian here, creator of Genie.
I haven't used PM2 but I have used supervisord and I presume they are similar in their approach. Genie apps run in Julia processes which are regular OS processes. What have you tried and what issues have you encountered?
Fiddled a bit with pm2 and the process seems to be straightforward. I'm sure it can be improved by setting up more complex pm2 configuration files, but for a quick solution, this seems to do the trick.
I'm on a windows machine so I confirmed it to work on both Win 10 and WSL/Ubuntu. Let's say we have a Genie app called MyGenieApp, then we run:
Windows PowerShell:
PS C:\MyGenieApp\bin> pm2 start cmd -- -- /k .\server.bat
This will open a CMD window and start the Genie app with the parent cmd process under pm2 control.
WSL/Ubuntu
(MyGenieApp) $ pm2 start bash -- bin/server
Should work the same as WSL for macOS and other *nix OS.
Notice that for Windows you need run it from within bin/ while for *nix from the app's folder (so one level higher, in ../bin). You can edit the files to adjust the paths as needed.
For some reason, on windows, pm2 needs -- -- otherwise it does not pass the arguments to the script. Might a bug in pm2.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With