Deployment Guide

    Deploy Apps with Coolify

    Coolify is an open-source, self-hostable alternative to platforms like Heroku, Netlify, and Vercel that makes deploying applications incredibly simple. Combined with RamNode's reliable and affordable VPS hosting, you can create a powerful deployment platform for your projects.

    Ubuntu 22.04/24.04
    Coolify PaaS
    ⏱️ 30-45 minutes

    What is Coolify?

    Coolify is a self-hosted platform-as-a-service (PaaS) that allows you to deploy applications with git-based workflows, automatic SSL certificates, and built-in monitoring. It supports various technologies including:

    Supported Technologies

    • • Docker containers
    • • Node.js applications
    • • PHP applications
    • • Python applications
    • • Go applications
    • • Rust applications
    • • Static sites

    Key Features

    • • Git-based deployments
    • • Automatic SSL certificates
    • • Built-in monitoring
    • • Database management
    • • Environment variables
    • • Team collaboration

    Prerequisites

    Before we begin, you'll need:

    Server Requirements

    • • RamNode VPS with at least 2GB RAM (4GB recommended)
    • • Ubuntu 22.04 LTS or newer
    • • A domain name pointed to your VPS IP address
    • • SSH access to your server

    Knowledge Requirements

    • • Basic familiarity with command line operations
    • • Understanding of web applications
    • • Git basics
    • • Domain DNS configuration
    3

    Setting Up Your RamNode VPS

    First, ensure your VPS is properly configured:

    Connect via SSH
    ssh root@your-server-ip
    Update System Packages
    sudo apt update && sudo apt upgrade -y
    Install Essential Packages
    sudo apt install -y curl wget git unzip software-properties-common apt-transport-https ca-certificates gnupg lsb-release

    💡 Tip: Replace "your-server-ip" with your actual RamNode VPS IP address.

    4

    Initial Server Configuration

    Set up firewall and create a non-root user:

    Configure UFW Firewall
    sudo ufw allow ssh
    sudo ufw allow 80/tcp
    sudo ufw allow 443/tcp
    sudo ufw allow 8000/tcp
    sudo ufw enable
    Create Non-Root User (Optional)
    sudo adduser coolify
    sudo usermod -aG sudo coolify
    su - coolify

    ⚠️ Warning: Make sure SSH is allowed before enabling UFW to avoid losing access!

    5

    Install Docker

    Coolify requires Docker to function. Install Docker and Docker Compose:

    Install Docker
    curl -fsSL https://get.docker.com -o get-docker.sh
    sudo sh get-docker.sh
    Add User to Docker Group
    sudo usermod -aG docker $USER
    Install Docker Compose
    sudo curl -L "https://github.com/docker/compose/releases/download/v2.21.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
    sudo chmod +x /usr/local/bin/docker-compose

    Log out and back in for the changes to take effect, then verify Docker is working:

    Verify Docker Installation
    docker --version
    docker-compose --version
    docker run hello-world

    ✅ Docker is now installed and ready for Coolify.

    6

    Install Coolify

    Install Coolify using the official installation script:

    Download and Install Coolify
    curl -fsSL https://cdn.coollabs.io/coolify/install.sh | bash

    ⏱️ Note: The installation process may take 5-10 minutes. The installer will download and configure all necessary components.

    After installation, you can check if Coolify is running:

    Verify Coolify Installation
    docker ps
    sudo systemctl status coolify

    🚀 Coolify is now installed and running on port 8000!

    7

    Initial Coolify Setup

    Access Coolify web interface and complete the initial setup:

    Access Coolify Web Interface
    http://your-domain.com:8000

    Initial Setup Steps:

    1. 1. Create your admin account (first user becomes admin)
    2. 2. Set your email address
    3. 3. Configure your instance URL
    4. 4. Set up your first server (localhost is pre-configured)
    5. 5. Complete the onboarding process

    💡 Tip: Make note of your admin credentials - you'll need them to manage your Coolify instance.

    8

    Create Your First Project

    Create a new project in Coolify:

    Project Creation Steps:

    1. 1. Click "New Project" in the Coolify dashboard
    2. 2. Enter a project name and description
    3. 3. Select your server (localhost by default)
    4. 4. Choose your deployment type (Git Repository, Docker Image, etc.)
    5. 5. Configure your Git repository or Docker settings

    💡 Git Integration: Coolify supports GitHub, GitLab, Bitbucket, and other Git providers with webhook integration for automatic deployments.

    9

    Deploy Your Application

    Deploy your application using Coolify's intuitive interface:

    🚀 Your application will be built and deployed automatically. You can monitor the deployment progress in real-time.

    10

    Configure Domain and SSL

    Set up custom domains and automatic SSL certificates:

    Domain Configuration:

    1. 1. Go to your application settings
    2. 2. Click on "Domains" tab
    3. 3. Add your custom domain (e.g., myapp.yourdomain.com)
    4. 4. Update your DNS records to point to your server IP
    5. 5. Enable "Generate SSL Certificate" option
    6. 6. Save the configuration
    DNS Record Configuration
    # A Record
    myapp.yourdomain.com → your-server-ip
    
    # Or CNAME Record
    myapp.yourdomain.com → yourdomain.com

    🔒 Coolify will automatically generate and renew SSL certificates using Let's Encrypt once your domain is properly configured.

    11

    Database Setup

    Add databases to your applications:

    12

    Environment Variables

    Configure environment variables for your applications:

    Setting Environment Variables:

    1. 1. Go to your application settings
    2. 2. Click on "Environment Variables" tab
    3. 3. Add key-value pairs
    4. 4. Mark sensitive variables as "Secret"
    5. 5. Save and redeploy if necessary
    Example Environment Variables
    NODE_ENV=production
    API_URL=https://api.myapp.com
    JWT_SECRET=your-secret-key
    REDIS_URL=redis://redis:6379
    EMAIL_FROM=noreply@myapp.com

    💡 Security: Use the "Secret" option for sensitive data like API keys and passwords. These will be encrypted and hidden in the interface.

    13

    Monitoring and Logs

    Monitor your applications and view logs:

    Application Monitoring

    • • Real-time application status
    • • Resource usage metrics
    • • Deployment history
    • • Health checks
    • • Performance metrics

    Log Management

    • • Real-time log streaming
    • • Build and deployment logs
    • • Application runtime logs
    • • Log filtering and search
    • • Log retention settings

    Accessing Logs and Monitoring:

    1. 1. Go to your application dashboard
    2. 2. Click on "Logs" tab for runtime logs
    3. 3. Click on "Deployments" for build logs
    4. 4. Use "Monitoring" tab for metrics and health checks
    5. 5. Set up notifications for critical events
    14

    Troubleshooting Common Issues

    15

    Best Practices and Security

    Security Best Practices

    • • Keep Coolify updated to the latest version
    • • Use strong passwords and enable 2FA
    • • Regular backups of applications and databases
    • • Monitor server resources and logs regularly
    • • Use HTTPS for all applications
    • • Secure environment variables properly

    Optimization Tips

    • • Right-size your RamNode VPS for your needs
    • • Use appropriate resource limits for containers
    • • Implement proper caching strategies
    • • Monitor and optimize database performance
    • • Use multi-stage Docker builds when possible
    • • Clean up unused Docker images regularly
    Update Coolify
    # Update Coolify to the latest version
    curl -fsSL https://cdn.coollabs.io/coolify/upgrade.sh | bash

    🎉 Congratulations! You now have a fully functional Coolify PaaS running on your RamNode VPS. You can deploy multiple applications, manage databases, monitor performance, and scale as needed—all through an intuitive web interface!