A NextCloud -nak van egy elég jól összerakott docker/compose alapú disztribúciója: https://github.com/nextcloud/docker/tree/master/.examples/docker-compos…
Ebben a komplett csomag össze van kalapálva: redis, cron, apache, sql db, reverse proxy és lets encrypt companion. Csak fel kell paraméterezni, és megy. A perzisztens adatok data volume -okba kerülnek, így a compose stop/rm sem gyakja ki őket.
A major frissítéseket csak lépésenként szabad megcsinálni, hogy a megfelelő db migráció megtörténhessen. Esetemben: 14->15->16->17->18. Azt hiszem másfél-két éve telepítettem, éppen ideje volt. Plusz a srácok elég gyorsan dolgoznak :) Igen, ezt ellustultam.
A munka érdemi része:
Ott, ahol a git -em állt a telepítéskor, leállítottam a konténereket. Backupoltam a compose és db.env fájlokat. Aztán húztam egy git pull -t, és release tag-enként elindítottam a nextCloudot, összesen négyszer. (pl. tag: 16-apache). Persze minden release tag-en megnéztem a compose fájlt, hogy változott-e strukturálisan vagy logikájában. A leállás és újra elindulás egyszerű:
docker-compose stop
docker-compose up -d
Egy kicsit furcsálltam, hogy nem volt megfelelően tagelve a docker image: https://github.com/nextcloud/docker/blob/15-apache/.examples/docker-com…
Ezt minden lépésben beírtam kézzel, pl. image: nextcloud:15.0-apache különben a legfrissebbel húzta volna rögtön. Nem egészen értem, hogy miért nincs a verzió beégetve ha egyszer release tag-en vagyunk, de mindegy.
Továbbá minden verzióugrásnál benéztem az admin panelbe, mert van egy áttekintő nézet ahol csinál egy self tesztet. Itt írta, hogy egyes db migrációkat kézzel végre kell hajtani.
4-ből 3 esetben:
docker exec --user www-data apache_app_1 php occ db:add-missing-indices
Illetve egy esetben:
docker exec --user www-data apache_app_1 php occ maintenance:mode --on
docker exec --user www-data apache_app_1 php occ db:convert-filecache-bigint
docker exec --user www-data apache_app_1 php occ maintenance:mode --off
Ezután kész. Egyébként ezt a nextCloudot csak sima meghajtó szinkronra használom én és egy családtagom, annak szuperül működik (korábbi telepítésekkel együtt vagy ~4 éve). De lehet hogy körbenézek milyen appok vannak hozzá.