Cara Melakukan Backup dan Restore Container Docker


 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
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.