Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add process compose provider #489

Open
gedw99 opened this issue Jan 17, 2025 · 1 comment
Open

Add process compose provider #489

gedw99 opened this issue Jan 17, 2025 · 1 comment
Labels
enhancement New feature or request provider Issue related to a provider

Comments

@gedw99
Copy link

gedw99 commented Jan 17, 2025

Describe the provider

Process compose, it’s like docker compose / swarm but runs on any os and does not use docker.

Does the provider provide the following APIs
An instance is a generic term used to describe containers, pods, deployments...

API Yes No I don't know
Start an instance yes
Stop an instance yes
Get info about an instance yes
Listening for external events happening yes

Does the provider have a Go API SDK?

Yes

If yes link it here

https://github.com/F1bonacc1/process-compose

Can the provider be started locally

Yes.

Providers such as Cloud provider may provide some local API tools.
Docker can be started locally, Kubernetes has tools such as k3s to facilitate the integration.

Additional context
Add any other context about the feature request here.

I use it on desktops and servers .

Sometimes on servers I have a docker and then run 100’s of processes in 1 docker.

This is possible because the config can be hierarchical

@gedw99 gedw99 added enhancement New feature or request provider Issue related to a provider labels Jan 17, 2025
@gedw99
Copy link
Author

gedw99 commented Jan 17, 2025

I use nats as a control plane to change its configuration on the fly also , so I can control it running on edge and any cloud , based on scaling up or down needs . So its like docker swarm but globally and not restricted to a singje data enter .

An auto scaler using nats can listen to the cpu memory of each process compose instance and each binary it is running and so I can scale up by booting another server on hetzner box or cloud or bare metal and then the config is sent in , and the binaries pulled off nats object store ( or s3). The scale down is also easy of course .

I plane on adding more cloud types but am looking for a good golang package for that

Start time is instant because it’s just running my binaries which are all golang , but can be node if anything

In terms of edge , nats can reach it as a nats lead node.

I am also planning to test on rasp pi , but am 99% sure it will work . Waiting on hardware

I plan to adapt https://github.com/synadia-io/nex to do all this also .

It currently only has a docket runner, buts it’s easy to add process compose, docker compose , k8 , etc for multi data center and edge ..

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request provider Issue related to a provider
Projects
None yet
Development

No branches or pull requests

1 participant