In questo scenario viene illustrato come eseguire l’aggiornamento di un’istanza di mailcow dockerized utilizzando i tools in esso integrati.
Aggiornamento automatico
Nella directory di mailcow-dockerized è presente uno script di aggiornamento che si occupa in sicurezza di tutto il processo. Lo script si chiama banalmente
update.sh
e per lanciarlo è sufficiente questo comando:
./update.sh
Una volta lanciato si occupa in autonomia del processo di aggiornamento, ma nel caso dovesse essere necessario, chiederà conferma delle operazioni da eseguire.
Opzioni dello script di aggiornamento
Dalla documentazione ufficiale di mailcow-dockerized si evince che è possibile invocare lo script di aggiornamento con le seguenti opzioni:
# Options can be combined
# - Check for updates and show changes
./update.sh --check
# - Do not start mailcow after applying an update
./update.sh --skip-start
# - Skip ICMP Check to public DNS resolvers (Use it only if you´ve blocked any ICMP Connections to your mailcow machine)
./update.sh --skip-ping-check
# - Switch your mailcow updates to the unstable (nightly) branch.
FOR TESTING PURPOSES ONLY!!!! NOT READY FOR PRODUCTION!!!
./update.sh --nightly
# - Switch your mailcow updates to the stable (master) branch. Default unless you changed it with --nightly.
./update.sh --stable
# - Force update (unattended, but unsupported, use at own risk)
./update.sh --force
# - Run garbage collector to cleanup old image tags and exit
./update.sh --gc
# - Update with merge strategy option "ours" instead of "theirs"
# This will **solve conflicts** when merging in favor for your local changes and should be avoided. Local changes will always be kept, unless we changed file XY, too.
./update.sh --ours
# - Don't update, but prefetch images and exit
./update.sh --prefetch