Coolify builds images in two places.
Local server with Local Docker Engine (the server you installed Coolify on).
Remote Server with Remote Docker Engine (the server you added as a Destination)
The server you are building on requires at least:
- 2 CPUs
- 2 GBs memory
- 30+ GB of storage for the images.
This is for building and storing images.
If you would like to host applications/databases/services, you will need more hardware resources.
ARM architecture are supported.
Supported Operating Systems
Ubuntu servers are supported. If you would like to have other, please consider open an issue on GitHub.
Questions asked, but it is not that complicated, trust me.
wget -q https://get.coollabs.io/coolify/install.sh -O install.sh; sudo bash ./install.sh
Scripted / fully automated
No questions asked.
Could be used to install Coolify programmatically.
If you want to Coolify to handle everything for you.
wget -q https://get.coollabs.io/coolify/install.sh -O install.sh; sudo bash ./install.sh -f
Usage: install.sh [options...] -h, --help Show this help menu. -v, --version Show script version. -d, --debug Show debug logs during installation. -f, --force Force installation, no questions asked. -r, --restart Only restart Coolify. Nothing more. -n, --do-not-track Opt-out of telemetry. You can set export DO_NOT_TRACK=1 in advance. -a, --auto-update Warning: TESTING PHASE, DO NOT USE IT YET! Enable auto update feature of Coolify. -w, --white-labeled Install white-labeled version. Contact me before using it (https://docs.coollabs.io/contact) -i, --white-labeled-logo Add your remote logo for your white-labeled version. Should be a http/https URL.
- Need to set the required environment variables in a
.envfile (see below)
- Need to have Docker Engine v20.10+ installed on your server.
Coolify needs to have the following environment variables to be set in advance.
This is done automatically with the automated installation script.
COOLIFY_APP_ID= COOLIFY_SECRET_KEY= COOLIFY_DATABASE_URL=file:../db/prod.db COOLIFY_SENTRY_DSN=https://firstname.lastname@example.org/6091062 COOLIFY_IS_ON=docker COOLIFY_WHITE_LABELED=false COOLIFY_WHITE_LABELED_ICON= COOLIFY_AUTO_UPDATE=false
|COOLIFY_APP_ID||A random UUID. Used to differentiate between installed instances.|
|COOLIFY_SECRET_KEY||Used to encrypt all kinds of private data. Must be |
|COOLIFY_DATABASE_URL||SQLite database URL. Must be under |
|COOLIFY_SENTRY_DSN||Sentry error report DSN. Not mandatory.|
|COOLIFY_IS_ON||Where Coolify is deployed to. Currently, only |
|COOLIFY_WHITE_LABELED||It removes the "branding" of your Coolify instance. Please get in touch with me before using this.|
|COOLIFY_WHITE_LABELED_ICON||A remote icon to be replaced on the login/registration page.|
|COOLIFY_AUTO_UPDATE||It updates your Coolify instance automatically behind the scenes.|
wget -q https://get.coollabs.io/coolify/install.sh -O install.sh; sudo bash ./install.sh -r
docker run -tid --env-file .env -v /var/run/docker.sock:/var/run/docker.sock -v coolify-db-sqlite coollabsio/coolify:latest /bin/sh -c "env | grep COOLIFY > .env && docker compose up -d --force-recreate"
Why is this complicated command instead of just a
docker compose up?
Coolify needs to be started inside docker's namespace.
In short, it is necessary for the auto-update process.
You can always execute the installation script with different options to reconfigure Coolify.
- If you want to opt-out of tracking, execute the install script with
- If you want to use the white-labeled version, execute the install script with
Some configurations are not preserved if you would like to change them on an already configured instance.
These options are the following:
So if you installed Coolify with
--do-no-track before, and you want to also use
--white-labeled option, you need execute the install script with
You need to allow the following ports in your firewall:
80, 443-> For Coolify Proxy (if you are using it)
3000-> For Coolify itself
9000-9100-> For TCP/HTTP on-demand proxies. You can specify different range in the
If you are using
Oracle Cloud free ARM server, you need to allow these ports, otherwise you cannot even reach Coolify itself!