process-compose
overmind
Our great sponsors
process-compose | overmind | |
---|---|---|
16 | 15 | |
962 | 2,708 | |
- | - | |
9.2 | 6.4 | |
22 days ago | 24 days ago | |
Go | Go | |
Apache License 2.0 | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
process-compose
- Process Compose: flexible scheduler to manage non-containerized apps
-
Show HN: Is_ready – Wait for many services to become available – 0 Dependencies
The IMO superior https://github.com/F1bonacc1/process-compose project has this built in, while allowing to manage regular programs that don't require containers.
See:
-
Show HN: Flox 1.0 – Open-source dev env as code with Nix
Devbox can also run services too. Both products use an awesome process runner called process-compose (https://github.com/f1bonacc1/process-compose/) which is worth checking out (it's even built with nix!)
- Process Compose: scheduler/orchestrator for non-containerized applications
- Lightweight, Single Process PM2 Alternative
-
Container + SSH = a good development environment
I've been using https://github.com/F1bonacc1/process-compose with great success.
It's a userspace process compositor that works across all relevant platforms, supporting daemon processes and k8s style readiness/health checks.
In combination with nix flakes, it quickly reduced my projects docker-compose usage for easy-to-configure services.
This gave huge performance benefits for the M1 Mac folks on my team especially for CPU intensive processes thanks to native binaries.
For maximal ease of use, the remaining docker-compose containers are started/stopped as a process-compose task.
- Show HN: I've built processes orchestrator, with UI in a single executable file
-
If docker-compose and K9S had a baby (without the containers gene)
In order to run a simple client-server (1 client, 5 servers) application, I wrote a simple docker-compose file and everything worked great. My dev flow would be the usual: make some changes/optimizations, spin everything up, run a bunch of tests, and go back to step one. At some point, I felt that for my dev environment and language (Linux, golang). docker-compose is great for spinning everything up, but for rapid development, it actually slows me down. I didn't really need containers. I tried to find an alternative solution. Something like a docker-compose, but for native processes, but most of the tools that I found were CI/CD oriented. I like K9S (who doesn't?) and I like docker-compose (some don't), so I built a Frankenstein Monster of them both :) https://github.com/F1bonacc1/process-compose I am not sure if you'll find it as useful as I do, but in any case, any feedback is more than welcome.
- If Docker-compose and K9S had a baby (without the containers gene)
overmind
-
Connecting Debugger to Rails Applications
Another solution is to use a different tool to drive the Procfile. The one I'm most familiar with is a tool called overmind. If you run your Procfile with overmind, you'll be able to open up a new terminal window and individually connect to any of the processes that are running. So if you want to connect to the web process to debug, you can open up a new window and run overmind connect web, and you'll have a window where you can work with the debugger's prompt.
-
Overmind, a better foreman or bin/dev for your Procfile
I recently wrote about Overmind (https://github.com/DarthSim/overmind), a drop in replacement for foreman.
If you've ever used Forman or another local Procfile/process manager, I think you'll love Overmind.
It's basically a more customisable foreman that runs in tmux - which means you can do cool things like tmux into a process and attach a debugger (which is nearly impossible with foreman).
Hope you enjoy the article!
-
Procfile.dev, bin/dev, and Rails 7 — how they work, and why (I think) they're great.
We switched to overmind and it's been great.
Hey, thanks for the comment u/sjieg! I don't have anything to add here, apart from suggesting the Overmind gem (https://github.com/DarthSim/overmind), which I just learnt about from another comment.
-
Show HN: Localias, securely manage local devserver aliases
I run an app with a bunch of separate processes managed in a Procfile invoked by Overmind (https://github.com/DarthSim/overmind):
```
app-web: cd app && poetry run invoke server
app-vite: cd app && pnpm dev
app-storybook: cd app && pnpm story:dev
api: cd api && poetry run invoke server
docs: cd docs && npm run dev
marketing: cd marketing && source .env && npm run dev
```
Maybe it's my getting older, but I've found it _infuriating_ to remember which process is bound to 3003 vs 3002 vs 3001 and so on. Very grateful for this project so I can save myself a couple seconds of frustration every day — t/y OP for building it!
-
Yew + Actix project
Use Overmind or cargo-runcc to run multiple commands in a single terminal, instead of running the server and the client in separate terminals
- Scaling Mastodon with systemd template units
-
Fly.io and Tailscale Saved Notado
FYI: Your link for Overmind is to the wrong project. The process manager is https://github.com/DarthSim/overmind
The article currently links to a deprecated Angular.js project with the same name (https://github.com/geddski/overmind)
-
Run multiple discord.py from main.py
However, as you might expect, managing that becomes a bit of a chore in the long run, this is where my recommendation of Overmind comes in.
- docker-compose without dockers
What are some alternatives?
supervisor - Supervisor process control system for Unix (supervisord)
Foreman - Manage Procfile-based applications
xrdp - xrdp: an open source RDP server
docker-slim - Slim Rails images, Rails/Sidekiq/ActionCable-standalone/Nginx with Docker-Compose & Kubernetes (StatefulSet Postgres & Redis)
skopeo - Work with remote images registries - retrieving information, images, signing content
exo - A process manager & log viewer for dev
iwf - iWF is an API orchestration platform offering an orchestration coding framework and service for building resilient, fault-tolerant, scalable long-running processes
modd - A flexible developer tool that runs processes and responds to filesystem changes
erlexec - Execute and control OS processes from Erlang/OTP
dip - The dip is a CLI dev–tool that provides native-like interaction with a Dockerized application.
envd - 🏕️ Reproducible development environment
runner - Runner is a structured command executer that monitor file changes to trigger process restarts.