Home » Cara Backup & Restore Nginx Proxy Manager (NPM) Tanpa Mematikan Server Lama (Docker)

Cara Backup & Restore Nginx Proxy Manager (NPM) Tanpa Mematikan Server Lama (Docker)

by RD
Cara Backup & Restore Nginx Proxy Manager

Cara Backup & Restore Nginx Proxy Manager (NPM) Tanpa Mematikan Server Lama (Docker) – Di tutorial ini kita akan backup Nginx Proxy Manager (NPM) dari VPS lama, lalu pindahkan ke VPS baru sebagai backup/standby, tanpa mematikan NPM di VPS lama.

Cocok kalau kamu mau punya 2 server:

  • VPS lama tetap jalan (produksi)
  • VPS baru jadi cadangan (backup)

Yang Akan Kita Backup

NPM menyimpan data penting di dalam container Docker, terutama:

  • /data → database dan konfigurasi Proxy Host, user login, setting, dll
  • /etc/letsencrypt → SSL certificate (Let’s Encrypt)

Kalau dua folder ini dibackup, maka semua setting NPM ikut pindah.

A. Backup NPM di VPS Lama (Tanpa Stop NPM)

1) Pastikan container NPM kamu jalan

Di VPS lama, cek container NPM:

docker ps --format "table {{.Names}}\t{{.Image}}\t{{.Ports}}"

Di kasus kita, nama container NPM adalah:

npm

Kalau nama container kamu beda, sesuaikan di command berikutnya.

2) Buat folder backup

mkdir -p /root/npm-backup

3) Backup /data dan /etc/letsencrypt jadi 1 file

Command ini tidak mematikan NPM, jadi aman buat server produksi:

docker run --rm \
  --volumes-from npm \
  -v /root/npm-backup:/backup \
  alpine sh -c "cd / && tar -czf /backup/npm-data.tar.gz data etc/letsencrypt"

4) Pastikan file backup sudah jadi

ls -lh /root/npm-backup/npm-data.tar.gz

Kalau muncul file dan ukurannya ratusan MB (contoh 600MB+), berarti backup sukses.

B. Pindahkan File Backup ke VPS Baru (Paling Gampang via HTTPS)

Pada contoh ini, file backup disimpan ke folder web supaya bisa didownload langsung pakai HTTPS.

Contoh lokasi file di server web:

/www/wwwroot/rodadunia.com/npm-data.tar.gz

Dan bisa diakses dari:

https://rodadunia.com/npm-data.tar.gz

Catatan: cara ini paling gampang, tapi file backup jadi publik, jadi nanti wajib dihapus setelah selesai.

Download dari VPS Baru (ambil dari HTTPS)

Login ke VPS baru, lalu jalankan:

wget -O /root/npm-data.tar.gz https://rodadunia.com/npm-data.tar.gz

Cek file sudah masuk atau belum

ls -lh /root/npm-data.tar.gz

Kalau ukuran sesuai (misal 600MB+), berarti file backup sudah ada di VPS baru.

C. Install Docker di VPS Baru

Kalau VPS baru belum ada Docker, install dulu.

1) Install Docker

apt update && apt install -y docker.io

2) Aktifkan Docker otomatis saat boot

systemctl enable --now docker

3) Cek Docker sudah jalan

docker -v

Kalau keluar versi Docker, berarti aman lanjut.

D. Restore NPM di VPS Baru (Backup/Standby)

Di sini kita akan menjalankan NPM di VPS baru sebagai backup.

1) Jalankan container NPM kosong dulu

Ini untuk membuat volume /data dan /etc/letsencrypt di VPS baru.

docker run -d \
  --name npm \
  --restart unless-stopped \
  -p 80:80 -p 81:81 -p 443:443 \
  -v npm_data:/data \
  -v npm_letsencrypt:/etc/letsencrypt \
  jc21/nginx-proxy-manager:latest

2) Stop container NPM baru dulu

Agar restore lebih aman:

docker stop npm

3) Restore file backup ke volume NPM

Jalankan command ini:

docker run --rm \
  --volumes-from npm \
  -v /root:/backup \
  alpine sh -c "cd / && tar -xzf /backup/npm-data.tar.gz"

4) Start lagi NPM

docker start npm

E. Akses Panel NPM di VPS Baru

Panel NPM bisa diakses dari:

http://IP_VPS_BARU:81

Gunakan IP VPS baru langsung.

Kenapa Kalau Pakai Domain Bisa Error 521?

Kalau kamu pakai domain yang diproxy Cloudflare, bisa muncul:

Error 521 Web server is down

Itu bukan error NPM, tapi karena:

  • Cloudflare tidak bisa connect ke server
  • atau port panel NPM (81) tidak diproxy Cloudflare

Solusi paling aman:
✅ akses panel pakai IP langsung

http://IP_VPS_BARU:81

F. Setelah Berhasil, WAJIB Hapus File Backup dari Web

Kalau kamu tadi taruh file backup di folder web (bisa diakses HTTPS), ini bahaya karena orang lain bisa download.

Hapus file backup dari server web:

rm -f /www/wwwroot/rodadunia.com/npm-data.tar.gz

Kesimpulan

Dengan cara ini kamu bisa:

✅ Backup NPM Docker tanpa mematikan NPM lama
✅ Pindah data NPM lengkap (proxy host + SSL + config)
✅ Menjalankan NPM di VPS baru sebagai backup/standby

You may also like