PatchMon 1.4.2 (Bare Metal Legacy) > Patchmon 2.0.2 Docker migration
Hier noch mal die Schritte, wie man die normale Bare-Metal-Legacy-Installation von PatchMon auf die aktuelle mit Docker migriert.
Wichtig immer vorher System sichern!
Migration:
Snapshot oder Backup vom System erstellen bevor man beginnt!:
DB Backup:
sudo -u postgres pg_dump \
-d patchmon \
-Fc \
–no-owner \
–no-privileges \
-f /tmp/patchmon-$(date +%Y%m%d-%H%M%S).Dump
Docker installieren:
Debian repos:
sudo apt install ca-certificates curl gnupg
sudo install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/debian/gpg | sudo gpg –dearmor -o /etc/apt/keyrings/docker.gpg
sudo chmod a+r /etc/apt/keyrings/docker.gpg
echo „deb [arch=$(dpkg –print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/debian $(lsb_release -cs) stable“ | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt update
Ubuntu repos:
sudo apt install ca-certificates curl gnupg
sudo install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg –dearmor -o /etc/apt/keyrings/docker.gpg
sudo chmod a+r /etc/apt/keyrings/docker.gpg
echo „deb [arch=$(dpkg –print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu$(lsb_release -cs) stable“ | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt update
Neuen default Ordner für Patchmon erstellen, ins Verzeichnis wechseln und dann den DB Backup hineinverschieben:
mkdir /opt/patchmon
cd /opt/patchmon
mv /tmp/patchmon-*.dump /opt/patchmon
Während der Installation entsprechend die Fragen beantworten. Die CORS_ORIGIN URLs entsprechend eintragen. Nach der Installation Patchmon noch NICHT mit docker compose starten!
Patchmon Installation setup starten:
bash -c „$(curl -fsSL https://raw.githubusercontent.com/PatchMon/PatchMon/refs/heads/main/docker/setup-env.sh)“
Wir starten zunächst nur die Datenbank:
docker compose up -d database
Backup von der Datenbank wiederherstellen:
cd /opt/patchmon
docker compose exec -T database pg_restore \
-U patchmon_user \
-d patchmon_db \
–no-owner –no-privileges –role=patchmon_user \
< /opt/patchmon/patchmon-*.dump
Überprüfen Sie die .env ob die Ports identisch wie in der alten Installation sind; wenn nicht, passen Sie sie entsprechend an, wie man das System davor konfiguriert hat.
nano .env
Die docker-compose.yml überprüfen, ob die Ports richtig sind und die alten Ports entsprechen!
nano docker-compose.yml
Alle alten Services stoppen: Wenn man SSL eingerichtet hat, entsprechend die nginx Konfig anpassen.
systemctl stop nginx
systemctl disable nginx
systemctl stop patchmon
Jetzt können wir den Docker Container starten:
docker compose up -d








