Coolify Headless Deploy

An opinionated way to deploy via SSH/rsync to remote servers supporting Traefik dynamic configs.

Required .env Variables

REMOTE_HOST_USER=root
REMOTE_HOST=188.245.71.48
REMOTE_HOST_PORT=22
REMOTE_HOST_PATH=/apps/superlandings
REMOTE_DOMAIN_HOST=188.245.71.48
REMOTE_SERVICE_IP=http://superlandings:3000
APP_NAME=superlandings
REMOTE_SYNC_EXCLUDES=data
REMOTE_DOMAIN_CONFIG_FILENAME=superlandings.yml
  • REMOTE_HOST: The IP address of your remote Coolify or Traefik server.
  • REMOTE_PATH: Target directory on the remote server.
  • SERVICE_IP: Internal container URL (e.g. http://app:3000).

CLI Usage & Commands

1. Deploy Application

node manage.js deploy

Syncs files via rsync and runs docker compose remotely.

2. Setup Traefik Proxy

node manage.js proxy

Generates the Traefik YAML configuration file locally.

3. Deploy Domain

node manage.js domain

Uploads the Traefik YAML to the gateway server.

Dependencies: Ensure rsync and ssh are installed locally and remotely.

{{ toast.message }}