Docker installeren op een VPS: stap-voor-stap handleiding
Docker vps installeren is een van de eerste stappen die veel systeembeheerders en ontwikkelaars nemen bij het opzetten van een nieuwe server. Docker maakt het mogelijk om applicaties te draaien in geisoleerde containers, wat zorgt voor consistentie, schaalbaarheid en eenvoudig beheer. In deze complete handleiding leer je stap voor stap hoe je docker vps installeren uitvoert, van de voorbereiding van je server tot het draaien van je eerste container.
Wat is Docker en waarom wil je docker vps installeren?
Docker is een open-source platform dat het mogelijk maakt om applicaties te verpakken in containers. Een container bevat alles wat een applicatie nodig heeft om te draaien: de code, runtime, bibliotheken en systeemtools. Dit maakt het eenvoudig om applicaties te verplaatsen tussen verschillende omgevingen zonder compatibiliteitsproblemen. Wanneer je docker vps installeren uitvoert, krijg je toegang tot een krachtig ecosysteem voor het beheren van webapplicaties.
Voordelen van Docker op een VPS
- Isolatie - elke applicatie draait in een eigen container zonder conflicten
- Consistentie - dezelfde container draait identiek op ontwikkel-, test- en productieomgevingen
- Efficient gebruik van resources - containers zijn lichter dan virtuele machines
- Snelle deployment - nieuwe applicaties zijn in seconden operationeel
- Eenvoudige schaalbaarheid - containers dupliceren is simpel
- Versie beheer - eenvoudig terugdraaien naar eerdere versies
Systeemvereisten voor docker vps installeren
Voordat je docker vps installeren uitvoert, moet je server aan bepaalde minimale vereisten voldoen. Hier is een overzicht van wat je nodig hebt:
| Component | Minimum | Aanbevolen | Toelichting |
|---|---|---|---|
| RAM | 1 GB | 2+ GB | Meer RAM = meer containers tegelijk |
| CPU | 1 core | 2+ cores | 64-bit processor vereist |
| Opslag | 10 GB | 40+ GB | SSD sterk aanbevolen voor performance |
| OS | Ubuntu 22.04+ | Ubuntu 24.04 LTS | Debian, CentOS, AlmaLinux ook ondersteund |
| Kernel | 3.10+ | 5.x+ | Moderne kernels bieden betere container-support |
Heb je nog geen VPS? Bekijk onze gids over VPS provider kiezen om de juiste server te selecteren voor je Docker-omgeving.
Stap 1: VPS voorbereiden
De eerste stap bij het docker vps installeren is het voorbereiden van je server. Log in via SSH en voer de volgende voorbereidende taken uit. Als je nog niet vertrouwd bent met SSH, lees dan onze gids over serververbindingen.
Systeem updaten
Begin altijd met het updaten van je systeem naar de nieuwste packages. Op Ubuntu/Debian voer je dit uit met apt update en apt upgrade. Hiermee zorg je dat alle beveiligingspatches zijn toegepast en dat je de nieuwste versies van afhankelijkheden hebt.
Benodigde packages installeren
Docker heeft een aantal basis packages nodig voor de installatie. Dit zijn packages die het mogelijk maken om repositories via HTTPS te gebruiken: apt-transport-https, ca-certificates, curl en gnupg. Deze packages zorgen voor een veilige download van Docker vanaf de officiele repository.
Oude Docker versies verwijderen
Als er een oudere versie van Docker op je server staat, verwijder deze dan eerst. Oudere pakketten heten mogelijk docker, docker.io of docker-engine. Het verwijderen van deze versies voorkomt conflicten met de nieuwe installatie.
Stap 2: Docker repository toevoegen
Docker wordt niet geinstalleerd vanuit de standaard Ubuntu/Debian repositories, maar vanuit de officiele Docker repository. Dit garandeert dat je altijd de nieuwste en meest stabiele versie krijgt.
GPG-sleutel toevoegen
Download de officiele Docker GPG-sleutel en voeg deze toe aan je systeem. Deze sleutel verifieert dat de packages die je downloadt authentiek zijn en niet zijn gemanipuleerd. Sla de sleutel op in /etc/apt/keyrings/ voor de nieuwste best practice.
Repository configureren
Voeg de Docker repository toe aan je bronnenlijst. Gebruik hierbij de architectuur van je systeem (meestal amd64 voor x86_64 servers) en de codenaam van je Ubuntu/Debian versie. Na het toevoegen van de repository, voer je nogmaals een update uit zodat je systeem de nieuwe packages kan vinden.
Stap 3: Docker Engine installeren
Nu je de repository hebt geconfigureerd, kun je de daadwerkelijke Docker Engine installeren. Het docker vps installeren proces omvat drie packages: docker-ce (de Docker Engine), docker-ce-cli (de command-line interface) en containerd.io (de container runtime).
Installatie verifieren
Na de installatie controleer je of Docker correct werkt door de versie op te vragen met docker --version en een test-container te draaien met docker run hello-world. Als je het hello-world bericht ziet, is docker succesvol geinstalleerd op je VPS.
Docker zonder sudo gebruiken
Standaard vereist Docker root-rechten. Om Docker-commando's zonder sudo te kunnen uitvoeren, voeg je je gebruiker toe aan de docker-groep. Hierna moet je uitloggen en opnieuw inloggen voor de wijziging van kracht wordt. Let op: dit geeft je gebruiker effectief root-rechten via Docker, dus wees hier voorzichtig mee op productieservers.
Stap 4: Docker Compose installeren
Docker Compose is een onmisbaar hulpmiddel dat je in staat stelt om multi-container applicaties te definieren en beheren met een enkel configuratiebestand. Bij het docker vps installeren hoort Docker Compose er standaard bij.
Wat is Docker Compose?
Met Docker Compose definieer je je complete applicatie-stack in een docker-compose.yml bestand. Dit bestand beschrijft welke containers je nodig hebt, hoe ze met elkaar verbonden zijn en welke configuratie ze gebruiken. Met een enkel commando start je vervolgens alle containers tegelijk.
Docker Compose installeren
De nieuwste versie van Docker Compose (V2) wordt geinstalleerd als Docker plugin. Bij recente Docker-installaties is Compose V2 vaak al meegeleverd. Controleer dit met docker compose version. Als het ontbreekt, installeer je de docker-compose-plugin package via apt.
Stap 5: Docker configureren voor productie
Na het docker vps installeren zijn er belangrijke configuratiestappen nodig om Docker geschikt te maken voor productiegebruik. Standaardinstellingen zijn niet altijd optimaal voor een productie-omgeving.
Logging configureren
Docker-containers genereren logs die standaard onbeperkt kunnen groeien. Configureer log rotation in het Docker daemon configuratiebestand (/etc/docker/daemon.json) om te voorkomen dat je disk volloopt. Stel een maximale grootte in van bijvoorbeeld 10 MB per logbestand en bewaar maximaal 3 bestanden.
Storage driver kiezen
De standaard storage driver (overlay2) is voor de meeste situaties de beste keuze. Controleer welke driver actief is met docker info. Op oudere systemen kan het voorkomen dat een minder efficiente driver wordt gebruikt, wat impact heeft op de prestaties.
Netwerk configureren
Docker maakt standaard een bridge-netwerk aan. Voor productie wil je vaak custom netwerken aanmaken die je containers op een gecontroleerde manier laten communiceren. Custom netwerken bieden ook automatische DNS-resolutie tussen containers, wat het beheer vereenvoudigt.
Stap 6: Je eerste container draaien
Nu Docker geinstalleerd en geconfigureerd is, is het tijd om je eerste echte container te draaien. Laten we als voorbeeld een Nginx webserver starten.
Nginx container starten
Met het commando docker run start je een Nginx container. Door de -d flag draait de container op de achtergrond (detached mode). Met de -p flag koppel je poort 80 van de container aan poort 80 van je VPS, zodat de webserver bereikbaar is via het IP-adres van je server. De --name flag geeft de container een herkenbare naam voor eenvoudig beheer.
Container beheren
Belangrijke commando's voor het beheren van je Docker containers zijn:
- docker ps - toon alle draaiende containers
- docker ps -a - toon alle containers inclusief gestopte
- docker stop [naam] - stop een container
- docker start [naam] - start een gestopte container
- docker restart [naam] - herstart een container
- docker logs [naam] - bekijk de logs van een container
- docker exec -it [naam] bash - open een shell in een draaiende container
Praktische Docker Compose voorbeelden
Hieronder vind je veelgebruikte Docker Compose configuraties voor websites en webapplicaties.
WordPress met MySQL
Een van de populairste toepassingen is het draaien van WordPress in Docker. Met Docker Compose definieer je een WordPress-container en een MySQL-container die samenwerken. De WordPress-container verbindt automatisch met de database-container via het Docker-netwerk.
Node.js applicatie
Voor Node.js applicaties maak je een Dockerfile die je applicatie en afhankelijkheden bevat, en gebruik je Docker Compose om de applicatie samen met eventuele databases en cache-servers te orchestreren.
Reverse proxy met Nginx
Bij het draaien van meerdere webapplicaties in Docker is een reverse proxy essentieel. Nginx Proxy Manager of Traefik zijn populaire opties die automatisch SSL-certificaten aanvragen via Let's Encrypt en het verkeer naar de juiste container routeren.
Docker beveiliging op je VPS
Na het docker vps installeren is beveiliging een cruciaal aandachtspunt. Docker containers delen de kernel met het hostsysteem, waardoor een beveiligingslek in Docker potentieel het hele systeem kan compromitteren.
Beveiligings best practices
- Draai containers nooit als root-gebruiker (gebruik USER in Dockerfile)
- Gebruik alleen officiele en vertrouwde Docker images
- Scan images regelmatig op kwetsbaarheden met tools als Trivy
- Beperk container-resources met memory en CPU limits
- Gebruik read-only filesystems waar mogelijk
- Houd Docker zelf altijd up-to-date
- Configureer de firewall om alleen noodzakelijke poorten open te stellen
Combineer Docker-beveiliging met de algemene serverbeveiligingsmaatregelen uit onze gids over website beveiligen.
Veelvoorkomende problemen bij docker vps installeren
Bij het docker vps installeren kun je tegen diverse problemen aanlopen. Hier zijn de meest voorkomende issues en hun oplossingen:
Permission denied
Dit komt voor als je Docker-commando's uitvoert zonder de juiste rechten. Voeg je gebruiker toe aan de docker-groep of gebruik sudo. Vergeet niet uit te loggen en opnieuw in te loggen na het toevoegen aan de groep.
Poortconflicten
Als een andere service al op een poort draait, kan Docker deze niet gebruiken. Controleer welke poorten in gebruik zijn en kies een andere poort voor je container, of stop de conflicterende service.
Onvoldoende opslagruimte
Docker images en containers kunnen veel ruimte innemen. Gebruik docker system prune regelmatig om ongebruikte images, containers en volumes op te schonen. Monitor je diskgebruik actief om problemen te voorkomen.
Samenvatting en volgende stappen
Je hebt nu succesvol docker vps installeren uitgevoerd en je eerste containers gedraaid. Docker opent een wereld van mogelijkheden voor het beheren van webapplicaties op je VPS. De volgende stappen die je kunt nemen zijn het opzetten van automatische container-updates, het configureren van monitoring met tools als Portainer of ctop, het implementeren van CI/CD pipelines voor automatische deployments en het verkennen van container-orchestratie met Docker Swarm. Met Docker op je VPS ben je klaar om moderne webapplicaties te draaien op een efficiente, schaalbare en beheersbare manier. Bekijk ook onze gids over VPS hosting in Nederland voor de beste servers om Docker op te draaien.
Docker VPS Installeren: Netwerkconfiguratie en Beveiliging
Na de basisinstallatie van Docker op je VPS is een goede netwerkconfiguratie essentieel. Docker maakt standaard een bridge-netwerk aan, maar voor productie-omgevingen heb je meer controle nodig over hoe containers met elkaar en de buitenwereld communiceren.
Docker Netwerk-typen Uitgelegd
| Netwerktype | Gebruik | Isolatie | Performance |
|---|---|---|---|
| Bridge (standaard) | Containers op dezelfde host | Goed | Goed |
| Host | Maximale performance nodig | Geen | Beste |
| Overlay | Multi-host (Docker Swarm) | Goed | Gemiddeld |
| Macvlan | Containers als fysieke apparaten | Volledig | Goed |
| None | Geen netwerk nodig | Volledig | N.v.t. |
Maak voor productie altijd een user-defined bridge network aan in plaats van het standaard bridge-netwerk. Dit biedt automatische DNS-resolutie tussen containers (je kunt containernamen als hostnaam gebruiken) en betere isolatie. Gebruik het commando docker network create mijn-netwerk om een nieuw netwerk aan te maken.
Docker Compose voor Productie op je VPS
Docker Compose is onmisbaar wanneer je meerdere services draait op je VPS. Met een enkel YAML-bestand definieer je je volledige applicatie-stack. Voor het installeren van Docker op een VPS in productie is Docker Compose de aanbevolen werkwijze.
Een typische webapplicatie-stack in Docker Compose bevat:
- Reverse proxy — Nginx of Traefik voor SSL-terminatie en load balancing
- Applicatie — Je webapplicatie in een of meerdere containers
- Database — MySQL, PostgreSQL of MongoDB in een eigen container
- Cache — Redis of Memcached voor sessieopslag en caching
- Monitoring — Prometheus en Grafana voor server monitoring
Gebruik altijd specifieke versienummers voor je images in plaats van de latest-tag. Dit voorkomt onverwachte updates die je applicatie kunnen breken. Sla gevoelige configuratie op in Docker secrets of environment files die niet in je Git-repository staan.
Docker Beveiliging op je VPS: Best Practices
Docker-containers zijn standaard niet volledig geisoleerd van het hostsysteem. Zonder aanvullende maatregelen kunnen kwetsbaarheden in containers leiden tot compromittering van je hele VPS. Volg deze best practices voor een veilige Docker-omgeving:
- Draai containers niet als root — Gebruik de USER-directive in je Dockerfile om een non-root gebruiker te specificeren.
- Beperk container-resources — Stel limieten in voor CPU en geheugen met --memory en --cpus om denial-of-service te voorkomen.
- Gebruik read-only filesystems — Mount het container-filesystem als read-only waar mogelijk met de --read-only flag.
- Scan images op kwetsbaarheden — Gebruik tools zoals Trivy of Docker Scout om bekende kwetsbaarheden in je images te detecteren.
- Beperk capabilities — Verwijder onnodige Linux capabilities met --cap-drop ALL en voeg alleen noodzakelijke capabilities toe.
Vergeet niet om ook de onderliggende VPS te beveiligen. Volg de stappen in onze VPS beveiligingschecklist en zorg voor een goed geconfigureerde firewall. Gebruik SSH-sleutels in plaats van wachtwoorden voor servertoegang en houd het besturingssysteem up-to-date met de nieuwste beveiligingspatches.
Docker VPS Installeren: Logging en Troubleshooting
Effectief logbeheer is cruciaal wanneer je Docker op een VPS installeert en in productie draait. Docker-containers genereren logs die essentieel zijn voor het debuggen van problemen, het monitoren van applicatie-gezondheid en het opsporen van beveiligingsincidenten.
Standaard schrijft Docker logs naar JSON-bestanden op de host. Bij langdraaiende containers kunnen deze logbestanden enorm groeien en je schijfruimte vullen. Configureer logrotatie in je Docker daemon-configuratie door maximale bestandsgrootte en het aantal te bewaren bestanden in te stellen. Een maximale grootte van 10 megabyte met drie roterende bestanden is een goede startconfiguratie voor de meeste toepassingen.
Voor productie-omgevingen met meerdere containers is een gecentraliseerde logging-oplossing onmisbaar. De ELK-stack (Elasticsearch, Logstash, Kibana) of het lichtere alternatief Loki met Grafana verzamelt logs van alle containers op een centrale locatie. Dit maakt het mogelijk om patronen te herkennen over meerdere services heen, wat cruciaal is bij het debuggen van microservice-architecturen.
Docker VPS: Volumes en Persistent Storage
Data in Docker-containers is standaard efemeer: wanneer een container wordt verwijderd, verdwijnt alle data mee. Voor productie-workloads op je VPS is persistent storage via Docker volumes essentieel. Volumes worden beheerd door Docker en bestaan onafhankelijk van containers. Ze overleven het stoppen, herstarten en zelfs verwijderen van containers. Gebruik named volumes voor databases en andere stateful services. Maak regelmatig backups van je volumes, bij voorkeur via een geautomatiseerd script dat de data kopieert naar een externe opslaglocatie. Bind mounts zijn een alternatief waarbij je een directory op het hostsysteem direct koppelt aan een container. Dit is handig voor ontwikkeling en configuratiebestanden, maar volumes zijn de voorkeur voor productiedata vanwege betere isolatie en portabiliteit tussen verschillende hosts.
Docker op je VPS: Automatische Updates en Onderhoud
Het onderhouden van een Docker-omgeving op je VPS vereist aandacht voor zowel Docker zelf als de images die je gebruikt. Verouderde images bevatten vaak bekende beveiligingskwetsbaarheden die actief worden misbruikt door aanvallers. Een gestructureerd updatebeleid is essentieel na het installeren van Docker op je VPS.
Automatiseer het controleren en updaten van Docker-images met tools als Watchtower. Watchtower monitort je draaiende containers en update ze automatisch wanneer er een nieuwe versie van de gebruikte image beschikbaar is. Configureer Watchtower om updates alleen uit te voeren tijdens onderhoudsvensters, bijvoorbeeld in de nacht wanneer het verkeer op je website minimaal is. Voor productie-omgevingen is een gecontroleerder aanpak veiliger: gebruik een CI/CD-pipeline die nieuwe images eerst test in een staging-omgeving voordat ze naar productie worden uitgerold.
Ruim regelmatig ongebruikte Docker-resources op. Oude images, gestopte containers en ongebruikte volumes nemen schijfruimte in beslag die geleidelijk kan oplopen. Het commando docker system prune verwijdert alle ongebruikte resources in een keer, maar gebruik dit voorzichtig in productie. Plan maandelijks een onderhoudssessie om je Docker-omgeving op te schonen, images bij te werken en de configuratie te reviewen.
Docker op je VPS: Resources en Leermaterialen
Na het installeren van Docker op je VPS is doorlopende kennis-opbouw essentieel om je containeromgeving professioneel te beheren. De officiele Docker-documentatie op docs.docker.com is de beste startplek met uitgebreide handleidingen, tutorials en referentiemateriaal. De Docker community forums en het Docker-kanaal op Stack Overflow bieden antwoorden op specifieke problemen die je tegenkomt. Voor diepere kennis over containerbeveiliging en productie-best-practices zijn de CIS Docker Benchmark en de NIST Application Container Security Guide waardevolle bronnen die regelmatig worden bijgewerkt met de nieuwste richtlijnen. Investeer tijd in het leren van container-orchestratie met Docker Compose en uiteindelijk Kubernetes als je infrastructuur groeit.