Skip to main content

Fresh Install

For a genuinely first-time setup with no old server behind it — complete Machine Prep first. Everything below configures state that Migration brings over from an old server anyway (Coolify's database — services, env vars, and domains, so SSL/DNS settings are included — plus the rest of the settings below). Doing these on a server that's about to be restored is wasted effort; they'll be overwritten.

  1. Tunnel to the setup wizard rather than opening port 8000 to the world — no infra change, nothing exposed publicly, gone the moment the SSH session closes:

    pass-cli ssh-agent daemon start --vault-name Tech
    export SSH_AUTH_SOCK=~/.ssh/proton-pass-agent.sock
    ssh -L 8000:localhost:8000 debian@<server-ip>

    Then browse http://localhost:8000 and create an admin account.

  2. Add DNS records at Infomaniak pointing dashboard.<domain> to the server:

    • A record: <ipv4>
    • AAAA record: <ipv6>

    For a migration instead, DNS isn't added fresh — see DNS → Migrating a subdomain for real for the OpenTofu-managed cutover.

  3. Configure https://dashboard.<domain> in Coolify settings and let it issue an SSL cert via Let's Encrypt. If the cert fails, re-save the domain in settings or restart the proxy to retry:

    sudo docker restart coolify-proxy
  4. Enable server metrics in Servers → localhost → Metrics — toggle it on to get CPU, memory and disk stats per container.

  5. Enable 2FA on the admin account in Coolify settings.

  6. Set up shared SMTP variables at the team level (Team → Shared Variables) so they can be referenced across all services as {{team.VAR_NAME}}:

    VariableValue
    DEFAULT_SMTP_HOSTyour SMTP host
    DEFAULT_SMTP_PORT587
    DEFAULT_SMTP_USERNAMEyour SMTP username
    DEFAULT_SMTP_PASSWORDyour SMTP password
    DEFAULT_SMTP_FROMyour from address
  7. Configure transactional email in Settings → Transactional Email:

    FieldValue
    Enabled✓ (must check this box)
    Hostyour SMTP host
    Port587
    EncryptionSTARTTLS
    Usernameyour SMTP username
    Passwordyour SMTP password

    Test by sending a test email from the Notifications tab in the main interface.