Upgraden
cd /path/to/conzent
bash scripts/backup.sh && bash scripts/install.sh --update
Of, vanaf elke locatie:
curl -sSL https://getconzent.com/install | sh -s -- --update
Maak eerst een backup. Migraties worden automatisch uitgevoerd en zijn niet omkeerbaar.
Wat de update doet
| Stap | Effect |
|---|---|
git fetch + git reset --hard | Gevolgde bestanden worden teruggezet naar de release. Lokale bewerkingen worden verworpen |
docker compose down | Containers stoppen. Volumes worden behouden — je database blijft bestaan |
Verwijdert het app-public volume | Verouderde CSS/JS/media wordt gewist zodat de activa van de nieuwe build worden geleverd |
docker compose build --no-cache --pull | Volledige herbouw, negerend de laagcache |
docker compose up -d | Alles start opnieuw |
migrations:migrate | Past alleen de uitstaande schema-migraties toe |
scanner:register | Registreert de gebundelde scanner opnieuw (idempotent) |
| Redis flush + sjablooncache wissen | Verwijdert verouderde sessies en gecompileerde sjablonen |
| Admin creatie | Overgeslagen — je gebruikers blijven onaangeroerd |
Reken op een paar minuten voor de no-cache herbouw.
Wat overleeft: de database, gegenereerde toestemmingsscripts en elk ongevolgd bestand — .env, .conzent-credentials, docker-compose.override.yml, backups/.
Wat niet overleeft: bewerkingen aan gevolgde bestanden zoals docker-compose.yml, de nginx-configuratie, sjablonen en bronbestanden; het app-public volume; en Redis-inhoud, zodat iedereen is uitgelogd.
Aanpassen zonder het te verliezen
De regel: bewerk nooit een gevolgd bestand. Er zijn twee ondersteunde plaatsen voor je wijzigingen.
.env bevat alle configuratie — APP_URL, APP_PORT, SMTP, scanner afstemming, sleutels van derden.
docker-compose.override.yml bevat alles over de stack zelf. Compose voegt het automatisch samen en het is gitignored:
services:
# Publiceer de scanner zodat externe installaties deze kunnen bereiken
scanner:
ports:
- "8300:8300"
# Geef MariaDB meer geheugen
mariadb:
command: --innodb-buffer-pool-size=1G
# Mount aangepaste nginx-configuratie
nginx:
volumes:
- ./docker/nginx/custom.conf:/etc/nginx/conf.d/default.conf:ro
Bestanden die je toevoegt — een Caddyfile, een aangepaste nginx-config — zijn ongevolgd en overleven updates. Bestanden die je wijzigt doen dat niet.
Een upgrade verifiëren
docker compose ps
docker compose exec app php bin/oci health
docker compose exec app php bin/oci scanner:health
Laad vervolgens het dashboard en bevestig dat je aanpassingen intact zijn. Als een banner op een live site er daarna verkeerd uitziet, voer dan docker compose exec app php bin/oci scripts:regenerate uit.
Als een upgrade fout gaat
# 1. Wat is er kapot
docker compose logs --tail=100 app
# 2. Rol code en gegevens samen terug
git checkout <previous-tag>
docker compose build --no-cache && docker compose up -d
bash scripts/restore.sh backups/<archive-taken-before-the-upgrade>.tar.gz --yes
Het herstellen van de backup van vóór de upgrade is wat een migratie ongedaan maakt — alleen de code terugdraaien laat het nieuwe schema staan. Dat is de reden voor de regel om eerst een backup te maken.
Verwijderen
bash scripts/install.sh --uninstall
Dit voert docker compose down -v uit, verwijdert elk volume, inclusief de database, en verwijdert vervolgens de installatiemap. Het vraagt eerst om bevestiging. Maak een backup als er enige kans is dat je de gegevens terug wilt.
De volledige referentie is te vinden bij de code: docs/upgrading.md op GitHub.