Navigation
Innovations

Coolify v4 on a Dedicated ARM Server: A Guide to Deploying a PWA Without a Cloud Platform

October 31, 2026 techy.sk

Coolify is an open-source platform that turns your own server into something similar to a managed platform for deploying applications. The assignment mentioned the recently released version with new ARM support. The reality is different: stable version 4 was released in April 2026, and it has supported ARM64 for quite some time. Coolify doesn’t even handle “serverless functions”—it runs containers. Nevertheless, it’s an interesting way to deploy a PWA on your own hardware. This guide walks you through setting up the server, installation, and deployment without any mistakes.

What’s Verified and What Isn’t

  • Version: Coolify v4.0.0 was released as a stable version on April 27, 2026. Versions in the 4.5 series were released in late October 2026, so “v4 just released” is no longer accurate.
  • ARM64: Both AMD64 and ARM64 architectures are supported. This is not a new feature.
  • Nixpacks: Coolify considers it obsolete and recommends its successor, Railpack, for both new and existing applications. The claim about “native Nixpacks builds” as a new feature is therefore inaccurate.
  • Serverless: Coolify is a platform for containers, not for on-demand functions. It corresponds more to PaaS than to serverless.
  • Reverse proxy: It is not “built into the Docker engine.” It runs as a separate container—Traefik by default, Caddy optionally.
  • Discussions on Hacker News: I found no evidence of a major wave of migration from cloud platforms to self-hosted servers in October 2026, so I do not cite it as a reason in the article.

When Is It Worth It?

A self-hosted server gives you control over pricing and data, but you also take on responsibility for security, backups, and availability. For small projects and PWAs, which are essentially static files, this is unnecessarily complicated, and free static hosting platforms may suffice. It’s worth it if you already have a server or need to run databases and your own services.

Free server from Oracle: what you need to know

Oracle Cloud offers ARM instances as part of its free tier. Before relying on them, make sure to:

  • Availability in your region varies, and you may not be able to get an instance right away.
  • The terms of the free tier include rules regarding inactive instances, which the provider may remove. Be sure to read the current terms.
  • Without backups, nothing is certain—not even with a paid server. Be prepared for the possibility that you may have to rebuild the instance from scratch.

Server Setup

Use Ubuntu LTS or Debian, which Coolify supports on ARM64. For Coolify, you need root access or access via sudo and an SSH key.

Cloud firewall: In the network (VCN), set rules for incoming TCP traffic on ports 22, 80, 443, and—for the initial setup—also 8000, 6001, and 6002. After setting up the domain for the control panel, close any ports you don’t need. Without these rules, you won’t be able to access Coolify from the internet.

The following script simply checks the machine. It does not install anything or change the firewall:

#!/usr/bin/env bash
set -u

[ "$(id -u)" -eq 0 ] || { echo "Spusti ako root (sudo)." >&2; exit 1; }

echo "Architektúra: $(uname -m)"
[ "$(uname -m)" = "aarch64" ] || echo "Upozornenie: nejde o ARM64."

echo "Pamäť a disk:"
free -h | head -2
df -h / | tail -1

echo "Obsadené porty (mali by byť prázdne):"
ss -tln | grep -E ':(80|443|8000|6001|6002)[[:space:]]' || echo "všetky voľné"

command -v docker >/dev/null 2>&1 && echo "Docker už je nainštalovaný: $(docker --version)"

Installation

Copy the installation command directly from the official Coolify documentation (the section on self-hosted installation). It downloads from the project’s server and runs as root, so be sure to review the script before running it. The installer will install Docker if it’s missing and will launch both Coolify and the proxy. Once complete, open the control panel on port 8000 of your server and immediately create an administrator account. Until you do so, whoever gets there first will gain control of the panel.

Update Now

In October 2026, security patches were released (v4.4.7 from October 21 and newer versions 4.5.x) addressing critical vulnerabilities in dependencies. After installation, check the version and update it from the control panel. The admin panel must not remain accessible to the internet with an outdated version. If two-factor authentication is available, enable it.

Deploying a PWA from GitHub

  1. Domain: In DNS, create an A record pointing to the server’s IP address (for IPv6, use an AAAA record). Wait for the changes to propagate.
  2. Source: In the dashboard, create a project and a new app from a GitHub source. For a private repository, link the GitHub app; for a public one, the URL is sufficient.
  3. Build pack: For a purely static PWA, select the static build pack and specify the output folder (for example, dist or public). For apps with their own server, use Railpack or a Dockerfile. Nixpacks is deprecated.
  4. Domain and SSL: Enter the domain with https://. The proxy will automatically obtain a certificate from Let’s Encrypt if the DNS is set up correctly and ports 80 and 443 are available.
  5. Deployment: Run “Deploy” and monitor the logs. Verify that the page loads over HTTPS and that the Service Worker has registered, as PWAs require a secure connection.
  6. Automatic Deployment: Enable automatic deployment when a branch is changed. For a GitHub application, the webhook is configured automatically; otherwise, add it manually in the repository settings using the address provided by Coolify.

After the initial deployment, check the response headers. A PWA should have a valid manifest, a Service Worker without aggressive caching of the service-worker.js and security headers.

Backups and Operations

  • Back up your Coolify configuration and database data off the server.
  • Restrict SSH to key-based authentication and disable password login.
  • Monitor disk space. Docker images accumulate, so clean them up occasionally.
  • Be aware that dashboard updates may occasionally fail. Do not update right before an important deployment.

What to Take Away From This

Coolify is a smart choice if you want your own container platform with the convenience of a web interface. It’s not free in terms of work and responsibility. A free ARM server is good for learning and smaller projects, but don’t rely on it for anything you can’t afford to lose, and update the control panel immediately after installation.

Share Article

You Might Be Interested