Install Compact on Elestio
Elestio runs the three Compose services on one dedicated VM: Compact, PostgreSQL with the required Flow Steward extensions, and RabbitMQ. The deployment uses the same public container images as the other installation guides. It does not build the application or require its private source code.
The public configuration repository contains docker-compose.yml and
elestio.yml. The first defines the services, persistent volumes, dependency
health checks and image digests. The second fills in Elestio's deployment
commands, generated passwords and HTTPS reverse proxy settings.
Fresh GitHub-template acceptance on 2026-09-28 used Compact source
31652e30e9c65b16576e9a4b3d105072c24b8337, image digest
sha256:dee794207e38a4828cadd659cb41cbeaf65a1bdfedd6e4532bcb2a89c77681b1.
It covered generated credentials, HTTPS readiness, first-administrator creation,
browser sign-in, users/projects/jobs/status CLI commands, graceful shutdown,
and a restart preserving the user, existing sessions, a file and runtime keys.
AI-provider execution and backup/restore were outside this installation check.
Before you start
- Activate an Elestio account with credit and a service quota. New-account approval may require a support request before a VM can be created.
- Connect a GitHub account to Elestio CI/CD and review the OAuth permissions. The deployment repository contains public configuration only. Organization access is not required when deploying your own fork.
- Use a fresh VM and fresh volumes for a new installation. This recipe does not migrate an existing database.
- Review the current price before creating the pipeline. Our September 2026 test used Netcup Nuremberg, 4 CPU / 8 GB RAM / 100 GB storage, quoted at $0.0411/hour, approximately $30/month at 730 hours. These resources are shared by the three containers. This is a tested size, not a measured minimum; prices and availability can change.
Deploy
- Fork the public deployment repository into your GitHub account. This copies configuration, not application images.
- In Elestio, open CI/CD → GitHub → Import Git Repository. Choose your fork.
- Choose Deploy on a new VM, a provider, region and suitable plan. Give the target a name, then continue to Configuration.
- Select the branch containing both configuration files. Set the pipeline
name to
flow-steward-compact. Confirm that Elestio selected Docker Compose, build commanddocker-compose pull, and run commanddocker-compose up -d. - Verify the generated environment settings and the reverse proxy route: HTTPS 443 → HTTP 172.17.0.1:3000. Leave additional HTTP Basic Auth off; Flow Steward provides its own sign-in. Create the CI/CD pipeline.
- Wait for the pipeline to finish and the public
/health/readyendpoint to return HTTP 200. PostgreSQL and RabbitMQ start first; Compact waits for both before initialization. A VM marked Running does not yet mean the application is ready.
Import the template through GitHub. Do not paste random_password into
the manual Docker Compose environment editor: in our direct-paste test,
Elestio kept that literal text as the password. Template import expands it.
The generated password values are secrets; do not copy them into Git.
Create the first administrator
Open the pipeline logs and find Flow Steward has no administrator yet.
Privately open the complete one-time setup URL printed there. It includes the
token needed by /bootstrap and expires after 15 minutes. Opening the
public application URL without this token cannot authorize first-user creation.
If the link expires while no user exists, open the VM's Open terminal and restart only Compact:
cd /opt/app/flow-steward-compact
docker compose restart compact
docker compose logs --tail=100 compact
Read the fresh setup URL, or use an earlier link if the log says it remains valid. Do not remove any volumes to regenerate a link.
Use the administrative CLI
Elestio's VM terminal opens on the Docker host. Run the packaged CLI inside Compact; you do not need a source checkout or manual secret exports:
cd /opt/app/flow-steward-compact
docker compose exec compact flow-steward --help
docker compose exec compact flow-steward --json users list
docker compose exec compact flow-steward status
The directory follows the pipeline name. If you chose another name, replace
flow-steward-compact in the path. For an interactive container shell:
docker compose exec compact sh
flow-steward users --help
Inside the container, application files are under /app and persistent files
under /data. The CLI works from any directory. As an alternative to the
first-user web form, run this from the VM terminal and answer its prompts:
docker compose exec compact flow-steward users create --role admin --plain
Host installation and stack commands, and users issue-bootstrap-token, are
not available in the packaged CLI. Use Elestio and Compose for deployment
operations.
Persistence, updates and cleanup
Only Compact is exposed through Elestio's HTTPS proxy. PostgreSQL and RabbitMQ are private to the Compose network. The three named volumes hold database, broker and application data. Restarting Compact preserves them; deleting volumes does not.
GitHub CI/CD can redeploy when you push to its configured branch. Review changes before syncing your fork, especially image digests and database upgrade requirements. Keep one Compact instance with this configuration. Restart and replacement temporarily interrupt access; wait for readiness before retrying.
Arrange and test backups of all three persistent stores before keeping real data. A provider VM backup is not evidence that application-level recovery has been tested.
After a disposable test, remove its pipeline and VM rather than leaving an unused server running. Confirm that no billable test resources remain in the Elestio dashboard. Keep production volumes and backups whenever the installation is intended to resume.