​How to Set Up Coolify in AWS EC2 and Have the Power to Do Anything in the Cloud

Coolify is an open-source, self-hostable platform that serves as an alternative to services like Heroku, Netlify, and Vercel. It lets developers deploy and manage applications, databases, and services on their own infrastructure, providing greater co… 

Coolify is an open-source, self-hostable platform that serves as an alternative to services like Heroku, Netlify, and Vercel. It lets developers deploy and manage applications, databases, and services on their own infrastructure, providing greater control and flexibility.

If you want to use Coolify, you have two options. You can purchase their cloud plan, which costs you money. On the other hand, you can self-host it for free and have unlimited usage without any limitations.

In this article, I will show you how to self-host Coolify directly in an AWS EC2 instance and use its features. I will also show you how to deploy any website directly into it.

206603be-4687-4e0d-ab96-6c1271006cf5

This article includes a step-by-step video walkthrough that I made for you. You can watch the video on my YouTube channel.

Table of Contents

Requirements For Self-Hosting Coolify

Since we’re going to self-host Coolify in the cloud for this article, you’ll need to make sure that you have at least the minimum specification of the server. According to Coolify, currently, the minimum requirements are given below:

Server Requirements

  • A VPS (Virtual Private Server)

  • A Dedicated Server

  • A Virtual Machine (VM)

  • A Raspberry Pi (see our Raspberry Pi OS Setup Guide)

  • Or any other server with SSH access

Supported Operating System

  • Debian-based (for example, Debian, Ubuntu)

  • Redhat-based (for example, CentOS, Fedora, Redhat, AlmaLinux, Rocky, Asahi)

  • SUSE-based (for example, SLES, SUSE, openSUSE)

  • Arch Linux

  • Alpine Linux

  • Raspberry Pi OS 64-bit (Raspbian)

Supported Architectures

Coolify runs on 64-bit systems:

  • AMD64

  • ARM64

Minimum Hardware Requirements

  • CPU: 2 cores

  • Memory (RAM): 2 GB

  • Storage: 30 GB of free space

Coolify may function properly on servers with lower specs than those mentioned above, but they recommend slightly higher minimum requirements. This ensures that users have sufficient resources to deploy multiple applications without performance issues.

I recommend that you check the official documents, as there might be an update regarding the specifications, and you do not want to miss that part!

I am going to use AWS EC2 as my server for this guide.

Set Up an AWS EC2 Instance for Coolify

Create a new EC2 instance in AWS.

Create EC2

Give it any suitable name you want. I am going with coolify-yt for the purpose of this article.

EC2 name

For the Amazon Machine Image (AMI), I will use the latest LTS of Ubuntu (Ubuntu Server 24.04 LTS).

AMI Type

The architecture will be 64-bit (x86).

AMI Architecture

For the instance type, I can’t go with the free tier because that wouldn’t meet the minimum specification. So I’m going with the t2.medium.

Instance Type

I will create a new key pair for key pair. I will go with RSA, and the file format will be .pem.

Key Pair

When you click on Create key pair, it will download a .pem file. Make sure to keep that safely.

For the storage, I am taking a 50 GB block storage. But you can follow Coolify’s minimum specification storage (30GB) for now if you want.

Storage configuration

If I want to use my Coolify from anywhere, I have to check the three boxes in the Network settings.

  • Allow SSH traffic from (Anywhere)

  • Allow HTTPS traffic from the internet

  • Allow HTTP traffic from the internet

Network settings

Now, simply click on “Launch instance.” It will create our new EC2 server. It might take a few seconds to half a minute. So just be patient and wait for it to finish its task.

Launch instance

Security Group of AWS EC2

Go to the instance tab and find the name of your newly created EC2 instance. Then, find its security group name.

instances

I have the security group name for my newly created EC2 as “launch-wizard-7”.

Security Group

Now, go to the security group tab and find out which security group is associated with your newly created EC2.

security group

As my EC2’s security group name was “launch-wizard-7”, I will click on that security group ID.

Security group ID

It will take me to its configuration page. Now, click on “Edit inbound rules”.

Inbound rules

Add a new rule. The type will be “Custom TCP”. The port will be “8000”. The source will be “Anywhere-IPv4”.

Edit inbound rules

Now save the rules.

save changes

Now, go to the EC2 page and make sure that the newly created EC2 is running.

EC2 status

If you want to connect to the EC2 server from your local machine, you have to use the .pem key. For that, you have to go to the “SSH Client” tab in the connect settings.

SSH Client

For now, I am not going to go through that much hassle, so I’ll use the browser to connect to my server using the “Connect” button.

Connect EC2

Make sure to note the Public IPv4 address of the EC2. Now click on “Connect”.

Connect

It will open a new tab with the EC2 connection in your browser.

Connect EC2

It will be ready to use within a few seconds.

EC2

Install Coolify in AWS EC2

There are many ways to install Coolify directly on our EC2. But I usually follow the recommended installation script of Coolify.

curl -fsSL https://cdn.coollabs.io/coolify/install.sh | sudo bash

Use sudo zsh instead of sudo bash if you are running the command from a “ZSH” terminal.

Coolify script

It will start installing Coolify into your server. Follow their prompts in the EC2 terminal.

install coolify in EC2

Depending on your EC2 specification, it might take several minutes. Be patient and let it do its job until it reaches the “Congratulations!” screen.

finish installation

Access Coolify from Anywhere Using the Public IP

After the installation, open a new tab and use that public IP with an ending :8000 port. It will take you to the Coolify account registration page for the first time.

Register

Register your account. The first one becomes the admin by default. But you can change the role afterwards anytime you want.

You can follow their instructions during the onboarding. But for now, I am simply skipping it.

Skip onboarding

Your coolify is now completely ready to go!

How to Deploy a Website Via Coolify

Now, I want to show you how you can easily deploy a static website directly from your GitHub repository in Coolify.

Go to ”Project” and click on “+Add”.

Add new project

Give it a name and a suitable description.

Name and description for the project

I will use one of my public repositories from GitHub for this trial.

GitHub Repo

You can also deploy from private repositories. To do so, select “Private repository with GitHub App” or “With deploy key”.

Now, click on Production.

Project

Now, we need to add a resource from which it will pull the data.

Add new resource

As this repository is already public, I will select “Public Repository” as my project source.

Public repo

Now, provide the public repo URL in the Repository URL field. Then click on “Check repository”.

Public repo URL

It will show you the project’s basic configuration. Check to ensure that everything is correct.

Project config

If everything is alright, then click on “Continue”.

As this is just a static website, I will change the build pack to “Static” and click on “Continue.”

Update project spec

Now, deploy the application by clicking on the “Deploy” button.

Deploy application

You can enable/disable the debug log as well.

Debug log

After the deployment is finished successfully, you can find the website’s autogenerated URL from the Links tab.

Link

The site will appear just fine!

Live site

You can also auto-generate a new domain or add your own domain/subdomain from the project settings at any time.

Change domain

The project settings will contain all other necessary configuration/environment variables, and so on. Whenever you change any information/settings/configuration in the configuration section, you just need to redeploy the application to reflect the changes.

You can add new team members, change the Coolify domain to something else (your domain/subdomain) and make it a generic, publicly accessible server.

Team

So, this is the generic procedure to install Coolify in an AWS EC2 instance without any hassle.

Conclusion

Thanks for reading this short tutorial. I hope it helped you install Coolify on your favourite server and increase your productivity.

To get more content like this, you can follow me on GitHub, LinkedIn, and YouTube. My website is always available, too.