Monday, December 31, 2018

Mengganti Storage Directory Docker pada Ubuntu

Dockers
Sebagaimana software umumnya, docker juga memiliki folder penyimpanan atau storage untuk menyimpan file resource baik milik docker itu sendiri (image container, configurasi network, temporary/cache build image dll) maupun file milik user. 

Tak jarang resource yang digunakan docker berukuran sangat besar. Biasanya penggunaan terbesar adalah image-image container yang di build atau di pull dari repository docker.

Untungnya penggunaan storage ini dapat diubah sesuai dengan arsitektur ataupun tata letak direktori yang kita inginkan. Seperti biasa, berikut adalah environment atau lingkungan kerja yang saya gunakan saat menulis catatan ini :

Operating System : Ubuntu-server 18.04.1 LTS / Ubuntu-server 14.04.5 LTS
Docker Version : 18.06.1-ce, build e68fc7a
Untuk docker yang saya gunakan, saya menginstallnya menggunakan tutorial install dari situs resmi docker, bisa dicek dimari.  Dan dikarenakan ubuntu 14.04.5 LTS dan 18.04.5 LTS menggunakan init process yang berbeda (Upstart dan Systemd), maka konfigurasi file yang akan diubah akan berbeda.

Gunakan editor kesayangan anda untuk mengubah konfigurasi file, kali ini saya menggunakan text editor nano.

Catatan : Disarankan mengcopy dengan rsyinc sebelum memindah directory docker. Jika tidak image dan container sebelumnya tidak lagi tersedia saat service kembali di nyalakan. Untuk mengcopy directory docker lama ke directory baru bisa menggunakan perintah :
rsync -a /var/lib/docker/* /path/to/new/root
Pertama kita bisa cek terlebih dahulu dimana directory docker berada, bisa menggunakan perintah:
sudo docker info
contoh outputnya adalah sebagai berikut:
Output docker info
Dari gambar diatas, kita ketahui directory docker berada di /var/lib/docker 

Ubuntu 14.04.5 LTS
Untuk anda yang menggunakan Ubuntu 14.04.5 LTS silahkan edit configurasi docker dengan perintah sebagai berikut :
sudo nano /etc/default/docker
kemudian ubah (atau tambahkan jika belum ada) variabel dan value berikut kedalam configurasi file
DOCKER_OPTS="-g /directory/storage/docker --storage-driver=overlay2"
Untuk jenis storage driver, kita bisa menentukan sesuai kebutuhan kita. Dokumentasi tentang storage driver docker dapat dilihat disini.

Setelah itu simpan dengan perintah ctrl+o kemudian ctrl+x, restart docker service dengan perintah :
sudo service docker restart
Kemudian cek kembali apakah directory docker sudah berpindah dengan perintah docker info seperti yang telah dijelaskan sebelumnya.

Ubuntu 18.04.2 LTS
Untuk anda yang menggunakan ubuntu 18.04.2 LTS, gunakan perintah berikut untuk mengedit file konfigurasi docker service :
sudo nano /etc/systemd/system/docker.service.d/docker.root.conf
kemudian tambahkan line berikut :
[Service]
ExecStart=
ExecStart=/usr/bin/dockerd -g /new/docker/root -H fd://
Setelah itu simpan dengan perintah ctrl+o kemudian ctrl+x, kemudian restart daemon dan docker service dengan perintah :
sudo systemctl daemon-reload
sudo systemctl restart docker
kemudian pastikan docker service sudah menggunakan directory baru  dengan perintah docker info.

Semoga bermanfaat. :)

Referensi :

No comments:

Post a Comment