GuiderUtveckling och driftAppplattformen Coolify

Driftsätt dina appar med Coolify

Coolify på Debian 13, ett självhostat alternativ till Heroku och Vercel som bygger dina appar från Git och kör dem med gratis certifikat, databaser och säkerhetskopior, med administrationsportarna stängda och telemetrin avstängd.

Testad på Coolify 4.3.23 med Docker 29.8.1 på Debian 13 (trixie) på en server hos Melonslab Uppdaterad 27 september 2026

Rekommenderad server för guiden

VC-S Micro · 2 vCPU · 8 GB Minne · 250 GB Lagring

Månadsvis, ingen bindningstid 7 dagars öppet köp

90 kr/mån

Beställ nu
På den här sidan

Det här sätter du upp

Coolify är en plattform för dina egna appar: peka den mot ett Git-repo, så bygger den appen, kör den i en container, ger den ett certifikat och startar om den om den stannar. Den kör också databaser bredvid dina appar och säkerhetskopierar dem.

Coolify skiljer sig från apparna i våra andra guider. Den installerar Docker, tar över port 80 och 443 för sin egen proxy, Traefik, och körs som root. Den behöver därför en egen, nyinstallerad server.

Varje steg nedan har körts på en nyinstallerad VC-P Alloy (2 vCPU, 8 GB) hos Melonslab med Debian 13:

  • Coolify 4.3.23 installerades på ungefär 2 minuter, och panelen fick ett certifikat från Let's Encrypt för sitt eget namn.
  • En Node.js-app byggdes från ett publikt Git-repo på ungefär 2 minuter, fick sitt certifikat och omdirigerade HTTP till HTTPS. Apparna såg varje besökares riktiga adress, över både IPv4 och IPv6.
  • En PostgreSQL-databas gick att nå från appen men inte från internet, och en säkerhetskopia av den togs på begäran.
  • Panelens extra portar stängdes mot internet, och allt startade igen av sig självt efter en omstart av servern.

Med två appar och en databas använde servern omkring 1,1 GB minne.

Innan du börjar

Du behöver:

  • en nyinstallerad server hos Melonslab med Debian 13 och inget annat installerat, med minst 2 vCPU och 2 GB minne, vilket är Coolifys minimum;
  • ett namn för panelen, till exempel coolify.example.com, och ett för varje app, till exempel app.example.com, med A- och AAAA-poster som pekar på servern.

Sätt upp SSH-nycklar och automatiska säkerhetsuppdateringar enligt steg 1 till 3 i säkerhetsguiden, och hoppa över steg 4: Docker öppnar containerportar förbi ufw, så i stället stänger steg 5 här de portar som inte ska vara publika.

Exemplen använder coolify.example.com för panelen och app.example.com för en app. Byt genomgående ut dem mot dina egna.

1. Installera Coolify

Den som först öppnar en ny Coolify kan skapa administratörskontot, och därmed styra servern. Skapa därför kontot redan vid installationen. Som root:

apt update
apt install -y curl
curl -fsSL https://cdn.coollabs.io/coolify/install.sh -o coolify-install.sh
ROOT_USERNAME=anna ROOT_USER_EMAIL=anna@example.com ROOT_USER_PASSWORD='Choose-a-long-passw0rd!' bash coolify-install.sh

Lösenordet måste ha minst 8 tecken, med stora och små bokstäver, en siffra och ett specialtecken. Coolify kontrollerar det också mot Have I Been Pwneds lista över läckta lösenord, och skapar inget konto om det finns där. E-postadressen måste ligga på en domän som finns.

Installationen avslutas med Your instance is ready to use! och panelens adress, http:// och serverns IPv4-adress med :8000. Den sparar kontots lösenord i /data/coolify/source/.env, som alla användare på servern kan läsa. Ta bort det när du har loggat in:

sed -i '/^ROOT_USER_PASSWORD=/d' /data/coolify/source/.env

Samma fil innehåller Coolifys krypteringsnycklar. Spara en kopia av den på ett säkert ställe utanför servern, till exempel i en lösenordshanterare.

2. Logga in och anslut servern

Öppna adressen och logga in med e-postadressen och lösenordet. Coolifys första steg ansluter den till servern den körs på:

  • Välj Continue och sedan This machine.
  • Välj Create "My First Project" och sedan Go to dashboard.

Coolify startar sin proxy, som svarar på port 80 och 443.

3. Ge panelen ett eget namn

Öppna Settings. Ange https://coolify.example.com under URL och välj Save changes. Inom en minut svarar panelen på det namnet, med ett certifikat från Let's Encrypt. Logga in där från och med nu.

Ställ in Anonymous telemetry på Disabled under Settings och Advanced. Den är påslagen från början och skickar en signal vid varje start, och felrapporter som innehåller din och administratörens e-postadress. Där kan du också stänga av Sponsorship reminders.

4. Driftsätt en app

Peka först app.example.com mot servern, med en A- och en AAAA-post. Öppna sedan My first project under Projects, och dess miljö production, och välj New Resource:

  • Välj Public Git Repository, ange repots adress och välj Check Repository. För ett första test fungerar Coolifys egna exempel: https://github.com/coollabsio/coolify-examples, med /nodejs som Base directory.
  • Kontrollera Branch, Build pack, som från början är Railpack och känner igen språket själv, och Port, porten appen lyssnar på. Välj Continue.
  • Coolify ger appen en adress under sslip.io, en publik tjänst som gör om ett namn till IP-adressen som står i det. Öppna Domains och välj Add Domain. Ange app.example.com som Domain, behåll https och välj Save. Coolify lägger också till www.app.example.com: peka en post mot den också, eller ta bort den och sslip.io-adressen under Actions.
  • Välj Deploy. Driftsättningsloggen visar bygget, och appen svarar på https://app.example.com när det är klart. Redirect HTTP to HTTPS är påslaget från början.

Ett privat repo kräver en deploy-nyckel, och GitHub och GitLab kan anslutas som en app för driftsättning vid varje push, båda via New Resource och Sources.

Appar bakom Coolifys proxy ser besökarens adress i headerna X-Forwarded-For och X-Real-Ip.

5. Stäng panelens extra portar

Panelen svarar också på port 8000, 6001 och 6002, direkt på serverns adress. När den har ett eget namn behövs de inte längre. Docker öppnar containerportar förbi ufw, så stäng dem i Dockers egen kedja, med en tjänst som lägger till reglerna igen efter varje omstart. Skapa /etc/systemd/system/coolify-ports.service:

[Unit]
Description=Keep Coolify dashboard ports off the internet
After=docker.service
Requires=docker.service

[Service]
Type=oneshot
RemainAfterExit=yes
ExecStart=/bin/sh -c "for t in iptables ip6tables; do for p in 8000 6001 6002; do $t -C DOCKER-USER -i eth0 -p tcp -m conntrack --ctorigdstport $p -j DROP 2>/dev/null || $t -I DOCKER-USER -i eth0 -p tcp -m conntrack --ctorigdstport $p -j DROP; done; done"

[Install]
WantedBy=multi-user.target

Starta den sedan:

systemctl daemon-reload
systemctl enable --now coolify-ports.service

Reglerna släpper inte igenom anslutningar från internet till de tre portarna, över IPv4 och IPv6, och panelen på https://coolify.example.com fortsätter att fungera.

6. Lägg till en databas

Välj New Resource i samma miljö, och sedan PostgreSQL eller en annan databas. Coolify startar den med ett genererat lösenord. Den går inte att nå från internet om du inte gör den publik, och dina appar når den på den interna adressen på databasens sida.

7. Säkerhetskopiera

Öppna databasen och sedan Backups, och välj + Add för att skapa ett schema, till exempel 0 3 * * * för varje natt klockan tre. Med Back Up Now i schemat tas en säkerhetskopia direkt. Säkerhetskopiorna sparas i /data/coolify/backups. En säkerhetskopia som ligger kvar på servern hjälper inte om servern går förlorad, så lägg till en S3-kompatibel bucket under S3 Storage och välj den i schemat.

Dina appar byggs om från Git, så det du behöver spara är databasernas säkerhetskopior, din kopia av /data/coolify/source/.env och filer som dina appar lagrar.

8. Uppdateringar

Coolify uppdaterar sig själv varje natt från början. Det ändrar du under Settings och Updates. Debians egna paket täcks av de automatiska säkerhetsuppdateringarna från säkerhetsguiden.

Felsökning

Installationen skapade inte ditt konto. Lösenordet var för svagt, fanns på listan över läckta lösenord, eller så finns inte e-postdomänen. Öppna panelen direkt och registrera dig, innan någon annan hinner göra det.

En app saknar certifikat. Dess A- och AAAA-poster pekar inte på servern än. Domains visar DNS matches för varje namn som gör det, och Coolify begär certifikatet så snart det går.

Du når inte panelen på http:// och port 8000. Steg 5 har stängt den. Använd https://coolify.example.com. För att öppna portarna igen fram till nästa omstart, till exempel när namnet inte fungerar, kör du iptables -F DOCKER-USER och ip6tables -F DOCKER-USER från konsolen i kundportalen. systemctl restart coolify-ports.service stänger dem igen.

Kör det på din egen server

VC-S Micro

90 kr/mån

vCPU
2
Minne
8 GB
Lagring
250 GB
Trafik
10 TB
Standard
HDD · RAID 10
  • Full root-åtkomst
  • Nativt /64 IPv6
  • RAID-skyddad lagring
  • Malmö, Sverige
  • Månadsvis, ingen bindningstid
  • 7 dagars öppet köp
Alla guider