Portainer Installatiehandleiding 2026: Docker Beheer Eenvoudig Gemaakt
Installeer Portainer CE op uw VPS om Docker containers te beheren met een web UI. Complete handleiding met installatie, stacks, templates en multi-server beheer.
Portainer Installatiehandleiding: Docker Beheer Eenvoudig Gemaakt
Portainer biedt u een web UI voor het beheren van Docker containers, images, volumes en netwerken. In plaats van docker CLI-commando’s uit het hoofd te leren, krijgt u een overzichtelijk dashboard dat containerbeheer visueel en toegankelijk maakt.
Wat is Portainer?
Portainer is een lichtgewicht beheer-UI voor Docker en Kubernetes:
- Webdashboard — Bekijk alle containers, images en volumes in één oogopslag
- Stackbeheer — Deploy Docker Compose stacks vanuit de UI
- App-templates — Implementeer 100+ populaire apps met één klik
- Multi-omgeving — Beheer meerdere Docker hosts vanuit één UI
- Gebruikersbeheer — Teamtoegang met rolgebaseerde machtigingen
- Containerconsole — Open een shell in containers vanuit de browser
- Logs en statistieken — Ingebouwde realtime monitoring
Het draait als één enkele Docker container en gebruikt minimale systeembronnen.
Portainer CE vs Business
| Functie | Community (Gratis) | Business ($) |
|---|---|---|
| Containerbeheer | ✅ | ✅ |
| Docker Compose/Stacks | ✅ | ✅ |
| App-templates | ✅ | ✅ |
| Rolgebaseerde toegang | ✅ | ✅ |
| Meerdere omgevingen | ✅ | ✅ |
| Kubernetes-ondersteuning | ✅ | ✅ |
| Registrybeheer | Basis | Geavanceerd |
| GitOps-implementaties | ❌ | ✅ |
| Externe authenticatie (LDAP/OAuth) | ❌ | ✅ |
| Ondersteuning | Community | Professioneel |
Voor zelfhosters en kleine teams: CE is meer dan voldoende. Business is voor organisaties die enterprise-authenticatie en audittrails nodig hebben.
VPS-vereisten
Portainer zelf is lichtgewicht, maar u heeft ruimte nodig voor uw containers:
- Minimum: 1 vCPU, 1GB RAM, 20GB opslag
- Aanbevolen: 2 vCPU, 4GB RAM, 40GB+ opslag
- Besturingssysteem: Ubuntu 22.04+, Debian 12+, of elke Linux met Docker
- Poorten: 9443 (HTTPS UI), 8000 (Edge agents, optioneel)
Aanbevolen VPS-providers
| Provider | Plan | Specificaties | Prijs |
|---|---|---|---|
| Hostinger | KVM1 | 1 vCPU, 4GB RAM | $4,99/mnd |
| Hetzner | CX22 | 2 vCPU, 4GB RAM | €5,49/mnd |
| DigitalOcean | Basic | 2 vCPU, 2GB RAM | $12/mnd |
| Vultr | VC2 | 2 vCPU, 4GB RAM | $24/mnd |
Beste prijs-kwaliteit: Hostinger KVM1 biedt u 4GB RAM voor $4,99/mnd — ruim voldoende voor Portainer plus een dozijn containers.
Installatiehandleiding
Stap 1: Maak uw VPS aan
- Registreer u bij de provider van uw keuze (wij raden Hostinger aan)
- Maak een VPS aan met Ubuntu 22.04 of Debian 12
- Selecteer minimaal 2GB RAM
- Voeg uw SSH-sleutel toe
- Noteer het IP-adres van de server
Stap 2: Installeer Docker
Maak via SSH verbinding met uw server en installeer Docker:
ssh root@your-server-ip
# Systeem bijwerken
apt update && apt upgrade -y
# Docker installeren met het officiële script
curl -fsSL https://get.docker.com | sh
# Installatie verifiëren
docker --version
docker run hello-world
Stap 3: Installeer Portainer CE
Maak een volume aan voor Portainer-gegevens en start de container:
# Datavolume aanmaken
docker volume create portainer_data
# Portainer starten
docker run -d \
-p 8000:8000 \
-p 9443:9443 \
--name portainer \
--restart=always \
-v /var/run/docker.sock:/var/run/docker.sock \
-v portainer_data:/data \
portainer/portainer-ce:sts
Dat is alles. Portainer draait nu.
Stap 4: Open het dashboard
Open uw browser:
https://your-server-ip:9443
U ziet een waarschuwing over een zelfondertekend SSL-certificaat — dat is normaal, accepteer deze.
Bij uw eerste bezoek:
- Maak uw beheerdersaccount aan
- Stel een sterk wachtwoord in (minimaal 12 tekens vereist)
- Klik op Get Started om verbinding te maken met de lokale Docker-omgeving
U heeft nu een volledig functionele Portainer-installatie.
Stap 5: SSL instellen met reverse proxy (optioneel)
Voor een correct SSL-certificaat gebruikt u Caddy of Traefik als reverse proxy:
Caddy-voorbeeld:
portainer.yourdomain.com {
reverse_proxy localhost:9443 {
transport http {
tls_insecure_skip_verify
}
}
}
Of met Nginx:
server {
listen 443 ssl;
server_name portainer.yourdomain.com;
ssl_certificate /etc/letsencrypt/live/portainer.yourdomain.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/portainer.yourdomain.com/privkey.pem;
location / {
proxy_pass https://localhost:9443;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
}
Wijs het DNS A-record voor portainer.yourdomain.com naar het IP-adres van uw server.
Containers implementeren
Implementeren vanuit app-templates
Portainer wordt geleverd met meer dan 100 ingebouwde templates:
- Ga naar App Templates in de zijbalk
- Blader of zoek (WordPress, Nginx, MySQL, Redis, etc.)
- Klik op het template
- Configureer de instellingen (naam, poorten, volumes)
- Klik op Deploy the container
Populaire templates:
- WordPress — Blog/CMS met MySQL
- Nginx — Webserver / reverse proxy
- PostgreSQL — Databaseserver
- Redis — Cache / message broker
- GitLab CE — Git-hosting
- Nextcloud — Zelf gehoste cloudopslag
Implementeren met Docker Compose (Stacks)
Stacks zijn de manier waarop Portainer Docker Compose-implementaties beheert:
- Ga naar Stacks → Add Stack
- Geef uw stack een naam
- Plak uw Docker Compose YAML:
services:
app:
image: nginx:alpine
ports:
- "8080:80"
volumes:
- app_data:/usr/share/nginx/html
restart: unless-stopped
volumes:
app_data:
- Klik op Deploy the stack
U kunt ook compose-bestanden ophalen uit een Git-repository — handig voor GitOps-workflows.
Een enkele container implementeren
Voor snelle eenmalige containers:
- Ga naar Containers → Add Container
- Stel Name en Image in (bijv.
redis:alpine) - Configureer:
- Port mapping — Hostpoort → Containerpoort
- Volumes — Persistente opslag
- Environment variables — Configuratiewaarden
- Restart policy — Always, on-failure, etc.
- Klik op Deploy the container
Containers beheren
Containeracties
Vanuit de Containers-lijst kunt u:
- Start/Stop/Restart — Containerstatus beheren
- Logs — Realtime containeruitvoer bekijken
- Console — Shell openen in de container (bash, sh, of aangepast)
- Inspect — Volledige containerconfiguratie bekijken
- Stats — CPU, geheugen, netwerk, I/O-grafieken
- Duplicate/Edit — Container klonen of instellingen wijzigen
Containerconsole
Een van de beste functies van Portainer. Moet u iets debuggen?
- Klik op de container → Console
- Selecteer een shell:
/bin/bashof/bin/sh - Klik op Connect
U bent nu in de container. Geen SSH, geen docker exec-commando’s nodig.
Bulkbewerkingen
Selecteer meerdere containers en:
- Stop alle geselecteerde
- Start alle geselecteerde
- Verwijder alle geselecteerde
- Kill alle geselecteerde
Handig voor het gezamenlijk beheren van gerelateerde services.
Images beheren
Images ophalen
- Images → Voer de imagenaam in (bijv.
node:20-alpine) - Klik op Pull the image
- De image wordt gedownload en is klaar voor gebruik
Ongebruikte images opruimen
Docker images stapelen zich snel op:
- Images → Vink unused images aan
- Selecteer alles → Remove
- Of gebruik de Prune-knop om alles wat ongebruikt is op te ruimen
Dit is het equivalent van docker image prune -a, maar visueel en veiliger.
Volumebeheer
Volumes aanmaken
- Volumes → Add Volume
- Geef het een naam (bijv.
postgres_data) - Klik op Create the volume
Volume-inhoud bekijken
Portainer laat u bestanden in volumes bekijken — handig om gegevens te controleren zonder een shell in containers te openen.
Volumes back-uppen
Voor kritieke gegevens maakt u back-ups van volumes:
docker run --rm \
-v postgres_data:/data \
-v /backup:/backup \
alpine tar czf /backup/postgres-backup.tar.gz -C /data .
Netwerkbeheer
Netwerken aanmaken
- Networks → Add Network
- Geef het een naam, selecteer de driver (
bridge,overlay,macvlan) - Configureer optioneel subnet en gateway
- Klik op Create the network
Containers verbinden
Om containers met elkaar te laten communiceren:
- Open het netwerk
- Join a container → Selecteer de container
- Nu kunnen beide containers elkaar op naam bereiken
Zo verbindt u uw app-container met uw database-container zonder databasepoorten publiek bloot te stellen.
Multi-serverbeheer
Externe Docker hosts toevoegen
Portainer kan meerdere servers beheren vanuit één dashboard:
Methode 1: Portainer Agent (aanbevolen)
Op de externe server:
docker run -d \
-p 9001:9001 \
--name portainer_agent \
--restart=always \
-v /var/run/docker.sock:/var/run/docker.sock \
-v /var/lib/docker/volumes:/var/lib/docker/volumes \
portainer/agent:sts
In Portainer:
- Environments → Add Environment
- Selecteer Agent
- Voer in:
remote-server-ip:9001 - Geef het een naam, klik op Connect
Methode 2: Docker API (minder veilig)
Schakel Docker TCP in op de externe host en maak direct verbinding. Gebruik dit alleen via een beveiligde tunnel.
Edge Agents
Voor servers achter firewalls of NAT:
- Environments → Add Environment → Edge Agent
- Kopieer het gegenereerde installatiecommando
- Voer het uit op de externe server
- De agent maakt verbinding via poort 8000
Geen inkomende poorten nodig op de externe server.
Gebruikersbeheer
Teams aanmaken
- Users → Teams → Add Team
- Geef het team een naam (bijv. “Developers”, “Ops”)
Gebruikers toevoegen
- Users → Add User
- Stel gebruikersnaam en wachtwoord in
- Wijs toe aan een team
- Stel de rol in: Administrator of User
Toegangscontrole
Toegang per omgeving en per resource:
- Volledige toegang — Volledig beheer
- Beperkt — Alleen toegewezen stacks/containers
- Alleen-lezen — Bekijken maar niet wijzigen
Hiermee kunt u ontwikkelaars toegang geven tot de staging-omgeving terwijl productie vergrendeld blijft.
Portainer met Docker Compose
Als u Portainer zelf liever beheert met Compose:
services:
portainer:
image: portainer/portainer-ce:sts
container_name: portainer
restart: always
ports:
- "8000:8000"
- "9443:9443"
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- portainer_data:/data
volumes:
portainer_data:
Sla op als docker-compose.yml en voer uit:
docker compose up -d
Prestatietips
1. Schakel swap in
Als u een kleine VPS gebruikt:
fallocate -l 2G /swapfile
chmod 600 /swapfile
mkswap /swapfile
swapon /swapfile
echo '/swapfile swap swap defaults 0 0' >> /etc/fstab
2. Stel resourcelimieten in
In Portainer kunt u bij het aanmaken van containers:
- Geheugenlimiet instellen (bijv. 512MB voor een Node-app)
- CPU-limiet instellen (bijv. 0,5 CPU’s)
Dit voorkomt dat één enkele container alle systeembronnen verbruikt.
3. Regelmatig opruimen
Plan Docker-opruiming in:
# Toevoegen aan crontab
0 3 * * 0 docker system prune -af --volumes 2>&1 | logger -t docker-prune
Of gebruik de ingebouwde image-opruiming van Portainer.
4. Gebruik Alpine images
Gebruik waar mogelijk alpine-varianten:
node:20-alpinein plaats vannode:20(50MB vs 350MB)python:3.12-alpinein plaats vanpython:3.12nginx:alpinein plaats vannginx
Probleemoplossing
Kan Portainer UI niet openen
# Controleer of de container draait
docker ps | grep portainer
# Controleer logs
docker logs portainer
# Controleer of de poort open is
ss -tlnp | grep 9443
# Controleer de firewall
ufw status
ufw allow 9443
Container start niet
- Controleer de logs: Containers → Selecteer de container → Logs
- Veelvoorkomende problemen:
- Poort al in gebruik → Wijzig de hostpoort
- Volume-toegang geweigerd → Controleer eigenaarschap
- Image niet gevonden → Controleer de imagenaam
Stack-implementatie mislukt
- Controleer de syntaxis van de compose YAML
- Controleer of alle images bestaan en toegankelijk zijn
- Controleer op poortconflicten met draaiende containers
- Bekijk het implementatielog in de stackdetails
Onvoldoende schijfruimte
# Gebruik controleren
df -h
# Docker opruimen
docker system prune -af --volumes
# Grote images controleren
docker images --format "{{.Repository}}:{{.Tag}} {{.Size}}" | sort -k2 -h
Portainer vs alternatieven
| Tool | UI | Complexiteit | Het beste voor |
|---|---|---|---|
| Portainer | Web GUI | Laag | Containerbeheer |
| Coolify | Web GUI | Laag | App-implementatie (PaaS) |
| Dokploy | Web GUI | Laag | App-implementatie (PaaS) |
| Yacht | Web GUI | Laag | Eenvoudige Docker UI |
| Dockge | Web GUI | Laag | Alleen Compose-beheer |
| Lazydocker | Terminal | Laag | CLI-gebaseerde monitoring |
Portainer is de beste algemene Docker beheer-UI. Gebruik Coolify of Dokploy als u PaaS-functies wilt (git deploy, auto-SSL). Gebruik Portainer als u volledige controle over individuele containers wilt.
Veelgestelde vragen
Hoeveel RAM gebruikt Portainer?
Ongeveer 50-100MB. Het is zeer lichtgewicht.
Kan ik Docker Swarm beheren met Portainer?
Ja. Portainer ondersteunt Docker Standalone, Docker Swarm en Kubernetes.
Is Portainer CE echt gratis?
Ja, permanent gratis voor maximaal 5 omgevingen. Geen functiebeperkingen binnen CE.
Hoe werk ik Portainer bij?
docker stop portainer
docker rm portainer
docker pull portainer/portainer-ce:sts
docker run -d -p 8000:8000 -p 9443:9443 \
--name portainer --restart=always \
-v /var/run/docker.sock:/var/run/docker.sock \
-v portainer_data:/data \
portainer/portainer-ce:sts
Uw gegevens blijven behouden in het portainer_data volume.
Kan Portainer Kubernetes vervangen?
Voor kleine tot middelgrote implementaties, ja. Als u minder dan 50 containers draait op een paar servers, is Portainer met Docker eenvoudiger en goedkoper dan Kubernetes.
Samenvatting
Portainer transformeert Docker-beheer van een puur CLI-ervaring naar iets visueels en toegankelijks. Of u nu een paar containers op een enkele VPS draait of meerdere servers beheert, het biedt u een overzichtelijk dashboard zonder de complexiteit van Kubernetes.
Aanbevolen configuratie:
| Component | Keuze | Kosten |
|---|---|---|
| VPS | Hostinger KVM1 | $4,99/mnd |
| Beheer | Portainer CE | Gratis |
| Reverse Proxy | Caddy | Gratis |
| Totaal | $4,99/mnd |
Begin hier: Neem een Hostinger VPS → Installeer Docker → Implementeer Portainer → Beheer alles vanuit uw browser.
Ready to get started?
Get the best VPS hosting deal today. Hostinger offers 4GB RAM VPS starting at just $4.99/mo.
Get Hostinger VPS — $4.99/mo// up to 75% off + free domain included
// related topics
// related guides
$1 VPS Hosting 2026: Cheapest VPS Servers Starting at $1/Month
Looking for $1 VPS hosting? Compare the cheapest VPS providers starting from $1-3/month. Real specs, no hidden fees, honest reviews of budget VPS options.
tutorialCaddy Reverse Proxy Guide 2026: Automatic HTTPS Made Easy
Set up Caddy as a reverse proxy with automatic HTTPS, zero-config SSL, and simple Caddyfile syntax. Complete VPS deployment guide.
tutorialCloudflare Tunnel VPS Guide 2026: Expose Services Without Opening Ports
Set up Cloudflare Tunnel on your VPS to expose web apps securely without opening ports or revealing your server IP. Complete guide with Docker and DNS config.
tutorialCoolify VPS Setup Guide 2026: Self-Hosted Vercel Alternative
Deploy Coolify on your VPS for a self-hosted Vercel/Netlify experience. Complete setup guide with Docker, SSL, and app deployments.
Andrius Putna
I am Andrius Putna. Geek. Since early 2000 in love tinkering with web technologies. Now AI. Bridging business and technology to drive meaningful impact. Combining expertise in customer experience, technology, and business strategy to deliver valuable insights. Father, open-source contributor, investor, 2xIronman, MBA graduate.
// last updated: March 13, 2026. Disclosure: This article may contain affiliate links.