This project is experimental, the purpose of this is to be able to manage services in multiple docker swarm node that are not joined as a cluster.
So potato will be able to communicate with each other, and manage docker swarm services on multiple nodes, just by simply changing the database value.
Download potato binaries from releases.
// this will do default set-up, such as running database migration
// starting grpc server & http server for /metrics endpoint for prometheus
// "run potato -h" if you need some changes on configuration, such as port, etc.
potato -database-dsn "postgres://somewhere" server
Notes: postgres database set-up is required at the moment, on local development, you can simply use docker-compose up -d postgres
and forget about the flag.
potato -node-id [custom host id, by default it will be hostname] \
-listen-address [wherever your potato server is] \
agent
Once this set-up adding a new rows on database based on node-id
would allow you to add/remove services from specific node you desire.