🎓 Lessons Learned — NetBox naar Portainer Migratie¶
Migratie van een bestaande Docker Compose setup naar een Portainer Stack. Portainer is strikter dan de CLI bij paden en volumes.
1. Absolute vs. relatieve paden¶
Portainer voert compose bestanden uit vanuit een eigen interne directory — relatieve paden werken daarin niet.
| Component | Probleem | Oplossing |
|---|---|---|
| Environment files | Portainer vond .env bestanden niet |
Variabelen inlinegemaakt in environment: blok |
| Config volume | ./configuration mount mislukte |
Absoluut pad gebruikt: /data/dockerdata/netbox/netbox-docker/configuration |
2. Volume name mismatch¶
Een veelvoorkomende val bij het verplaatsen van Compose projecten.
- Probleem: Originele install gebruikte project naam
netbox-docker→ volumes heettennetbox-docker_netbox-postgres-data. Nieuwe Portainer stack maakte lege volumes aan met naamnetbox_netbox-postgres-data. - Oplossing: Expliciete
name:property in hetvolumes:blok om logische naam te koppelen aan de historische volume naam:
3. YAML anchor overerving conflict¶
- Probleem:
netbox-workerennetbox-housekeepingerfdenports:van hetnetbox: &netboxanchor → "port is already allocated" fout. - Oplossing: Expliciet overschrijven met een lege lijst:
4. Port conflicten¶
| Conflict | Oorzaak | Oplossing |
|---|---|---|
| Externe port 9999 | Verouderd container hield port vast | Overgestapt naar port 9998, stale containers verwijderd |
| Geen port mapping | Originele YAML had geen ports: sectie |
9998:8080 mapping toegevoegd aan netbox service |
Reproduceerbare checklist voor Portainer migraties¶
- Stop oude project:
docker compose down - Noteer exacte namen van bestaande volumes:
docker volume ls - Maak nieuwe
docker-compose.ymlvoor Portainer: - Embed alle secrets/variabelen in
environment:blokken - Gebruik absolute paden voor host-gemounte volumes
- Voeg
ports:toe aan hoofdservice,ports: []aan worker/secondary services - Map volumes in
volumes:blok metname:property naar historische namen - Deploy in Portainer, update proxy naar nieuwe port
Verwant¶
- [[🚀 Docker Host Migration Plan LXC to VM]]
- [[Docker Installatie Guide Ubuntu]]