Tutorial LinuxIndonesia - Docker mempunyai
fitur free untuk
melakukan backup dan
restore Container docker.
Pada artikel ini, kita
akan belajar bagaimana
cara backup dan
restore container docker,
menggunakan fitur yang sudah
tersedia di docker
tersebut.
Untuk mengurangi
dari kesalahan konfigurasi
atau corrupt dari
container docker, perlu
untuk di backup
container docker secara
berkala.
Kita lihat terlebih
dahulu daftar container
yang ada di server
kita.
Cara Melakukan Backup dan Restore Container Docker |
Tentukan container yang mana
untuk di lakukan
backup container.
[root@bagol69:~# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
7385be77ced7 ubuntu "/bin/bash" About an hour ago Exited (0) 21 minutes ago bagol69_container
0b5ff4cfbb2b ubuntu "/bin/bash" About an hour ago Exited (0) 21 minutes ago agitated_minsky
77a37a14902e hello-world "/hello" About an hour ago Exited (0) 18 minutes ago elegant_minsky
Misalnya, admin bagol69
ingin melakukan backup
container bagol69_container.
Kita menggunakan parameter
docker commit untuk
melakukan backup container
docker.
[root@bagol69:~# docker commit
7385be77ced7
bagol69_container_backup
sha256:09af2045a0659e33c015a56a18b2e4efb4c9683395b0f27c92b19201574bd533
Note
Docker commit digunakan untuk melakukan backup container
7385be77ced7 merupakan
container ID yang
ingin kita backup container.
bagol69_container_backup merupakan nama
container yang berhasil untuk di backup. Sesuaikan dengan keinginan anda.
Artikel Selanjutnya.
Cara Memberikan nama pada Container Docker
Belajar Docker : Instalasi dan Konfigurasi Docker di Ubuntu 16.04
Setelah
melakukan backup container,
hasil dari backup container
tersebut akan terbentuk
sebuah images.
[root@bagol69:~# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
bagol69_container_backup latest 09af2045a065 6 seconds ago 83.5MB
ubuntu latest 735f80812f90 9 days ago 83.5MB
debian latest 3bbb526d2608 2 weeks ago 101MB
Kita lakukan compress
backup container menggunakan
parameter save -o untuk melakukan compress
container docker.
[root@bagol69:~# docker save -o
/tmp/bagol69_container_backup.tar.gz bagol69_container_backup
Note
Docker save –o merupakan
parameter docker di gunakan untuk compress container docker
yang telah berhasil
di backup sebelumnya.
/tmp/ merupakan
folder yang di gunakan untuk menyimpan
hasil backup container yang telah berhasil
di compress menjadi
tar.gz atau .unzip.
Bagol69_container_backup merupakan
container docker yang sudah
berhasil di backup
dari container bagol69_container. Yang
terbentuk menjadi sebuah images
bukan container.
Kita pergi ke folder
/tmp untuk melihat
hasil compress dari bagol69_container_backup.
[root@bagol69:~# cd /tmp/
root@bagol69:/tmp# ls
bagol69_container_backup.tar.gz systemd-private-7ed37adfecba4776b71fc68dc9977cff-systemd-timesyncd.service-45u1lH
root@bagol69:/tmp#
Sudah berhasil melakukan
backup Container docker menggunakan
fitur yang sudah di
sediakan oleh docker.
Sekarang kita coba
melakukan restore container
docker yang sebelumnya sudah
berhasil melakukan backup
container docker.
Sebelum melakukan restore
container docker, lebih
baik hapus terlebih
dahulu images container
hasil dari backup.
Untuk menghindari
dari konflik atau duplicate
nama container, menggunakan parameter docker rmi
[root@bagol69:~# docker rmi bagol69_container_backup
Sekarang kita melakukan
pengecekan images yang
kita hapus sebelumnya.
Menggunakan parameter docker
images.
Sudah tidak
ada images yang bernama
bagol69_container_backup.
[root@bagol69:/tmp# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
ubuntu latest 735f80812f90 9 days ago 83.5MB
debian latest 3bbb526d2608 2 weeks ago 101MB
hello-world latest 2cb0d9787c4d 3 weeks ago 1.85kB
Kita dapat melakukan
restore container hasil
backup sebelumnya menggunakan
parameter docker load –i.
[root@bagol69:/tmp# docker load
-i /tmp/bagol69_container_backup.tar.gz
Loaded image:
bagol69_container_backup:latest
Note
Docker load –i merupakan
parameter di gunakan untuk
melakukan restore container
hasil dari backup.
/tmp/bagol69_container_backup.tar.gz merupakan file
container hasil dari
backup tersebut.
Apabila berhasil
melakukan restore container
akan muncul di
images container hasil
backup sebelumnya.
[root@bagol69:/tmp# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
bagol69_container_backup latest 09af2045a065 6 minutes ago 83.5MB
ubuntu latest 735f80812f90 9 days ago 83.5MB
debian latest 3bbb526d2608 2 weeks ago 101MB
hello-world latest 2cb0d9787c4d 3 weeks ago 1.85kB
Untuk menjadikan sebuah
container, kita menggunakan
command di bawah
ini.
root@bagol69:/tmp# docker run
-ti bagol69_container_backup
root@da3eb35b5bc2:/#
root@bagol69:/tmp#
Terakhir kita melihat
daftar container yang
ada di server.
[root@bagol69:/tmp# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
da3eb35b5bc2 bagol69_container_backup "/bin/bash" 17 seconds ago Up 16 seconds
dreamy_sammet
8c96c97ffd52 debian "bash" 21 minutes ago Up 21 minutes BAGOL69-C
d23427f1a89b debian "bash" 23 minutes ago Up 23 minutes BAGOL69-B
45112e8efbaa ubuntu "/bin/bash" 24 minutes ago Up 24 minutes BAGOL69-A
ba2b39a722ec ubuntu "/bin/bash" About an hour ago Exited (0) 29 minutes ago contoh_data2
27962200896f ubuntu "/bin/bash" About an hour ago Exited (0) 29 minutes ago data
250ad4b087a7 debian "/bin/bash" About an hour ago Exited (0) 29 minutes ago goofy_pasteur
e3668c6f67a4 debian "/bin/bash" About an hour ago Exited (0) 29 minutes ago www_bagol69_com
b18314c60681 debian "bash" About an hour ago Exited (0) 29 minutes ago blissful_lewin
0b5ff4cfbb2b ubuntu "/bin/bash" About an hour ago Exited (0) 29 minutes ago agitated_minsky
77a37a14902e hello-world "/hello" About an hour ago Exited (0) 25 minutes ago elegant_minsky
[root@bagol69:/tmp#
Kita sudah berhasil
melakukan restore container
docker yang sudah
di backup.
Alhamdulilah sudah berhasil
melakukan percobaan backup
dan restore docker.
Nantikan artikel selanjutnya
yang masih membahas
docker.