Cara Menyimpan Gambar dan Wadah Docker di Drive Eksternal

  • Post author:
  • Post category:Tutorial

Docker menyimpan gambar yang diunduh, menjalankan container, dan data volume persisten dalam satu root direktori bersama di drive sistem Anda. Anda dapat menyesuaikan konfigurasi Anda untuk menggunakan drive eksternal, berbagi jaringan, atau disk internal kedua jika Anda perlu menambahkan penyimpanan ke instalasi Anda.

Persiapan

Bagian utama dari panduan ini berlaku untuk Docker Engine untuk Linux dan Docker Desktop di Windows dan Mac. Anda harus menemukan file daemon.json Docker Anda di ketiga platform. Ini akan berada di salah satu lokasi berikut:

/etc/docker/daemon.json di Linux.%programdata%dockerconfigdaemon.json di Windows.~/Library/Containers/com.docker.docker/Data/ database/com.docker.driver.amd64-linux/etc/docker/daemon.json di Mac.

Docker menyarankan agar pengguna Windows dan Mac memperbarui file konfigurasi melalui UI, daripada menerapkan perubahan secara manual di editor teks. Anda dapat mengakses layar pengaturan dengan menuju ke Preferences > Docker Engine > Edit file di antarmuka Docker Desktop.

Mengubah Direktori Data Anda

Lokasi direktori data Docker dikendalikan oleh pengaturan data-root di file konfigurasi Anda. Versi Docker lama yang dirilis sebelum 17,06 menggunakan grafik sebagai gantinya. Anda dapat memeriksa versi yang Anda miliki dengan menjalankan versi docker command.

$ versi docker … Server: Mesin Docker – Mesin Komunitas: Versi: 20.10.17

Temukan atau tambahkan kunci yang relevan di dalam file konfigurasi. Tetapkan jalur direktori yang Anda inginkan sebagai nilainya. Berikut adalah contoh Linux yang akan menyimpan data Docker ke drive eksternal yang dipasang di sistem file:

{ “data-root”: “/mnt/docker-data” }

Anda harus me-restart daemon Docker setelah Anda melakukan perubahan:

$ sudo service docker restart

Docker Desktop dapat dimulai ulang pada Windows dan Mac dengan keluar darinya dan kemudian meluncurkan instance baru.

Anda harus menyalin konten direktori data Anda saat ini ke jalur baru jika Anda ingin mempertahankan konten yang ada. Jika tidak, Anda akan mulai dengan yang bersih, tidak dapat mengakses wadah dan gambar yang dibuat sebelumnya.

$ sudo rsync -aSv /var/lib/docker/ /mnt/docker-dataMengubah Direktori Data Tanpa Restart

Anda dapat memindahkan direktori data tanpa restart daemon dengan membuat symlink dari /var/lib/docker ke lokasi baru Anda. Ini bisa berguna jika Anda kehabisan ruang pada host di mana restart layanan Docker yang tidak terjadwal bukanlah opsi yang layak.

Salin data Docker Anda yang ada ke direktori baru Anda:

$ sudo rsync -aSv /var/lib/docker //mnt/docker-data

Lalu buat symlink yang menyelesaikan /var/lib/docker ke lokasi target:

$ sudo ln -s /mnt/docker-data/ /var/lib/docker

Jangan gunakan teknik ini untuk beban kerja yang memodifikasi data sistem file dengan cepat. Ada risiko ketidakkonsistenan yang terjadi jika data ditulis dalam waktu antara Anda menyalin direktori yang ada dan membuat symlink.

Apa yang Sebenarnya Berubah?

Mengubah direktori root Docker memengaruhi semua tipe data berbeda yang disimpan daemon. Ini termasuk gambar Anda, wadah, plugin yang diinstal, konfigurasi Swarm, dan volume, serta cache build Docker.

Memodifikasi jalur akan menulis semua data ini ke lokasi baru Anda. Anda tidak dapat secara selektif memindahkan tipe tertentu untuk memisahkan titik pemasangan. Ini berarti penting untuk memilih lokasi penyimpanan yang akan menawarkan kinerja keseluruhan yang baik. Menggunakan drive eksternal yang lambat dapat merusak responsivitas operasi CLI buruh pelabuhan, meskipun itu akan sesuai dengan jenis data tertentu seperti penyimpanan gambar jangka panjang.

Dengan tidak adanya dukungan jalur data per jenis, memangkas sumber daya yang tidak digunakan dapat menjadi cara yang lebih baik untuk mengelola persyaratan penyimpanan Docker. Alih-alih mengalokasikan lebih banyak ruang bagi Docker, bersihkan aset yang berlebihan dan dorong gambar yang tidak digunakan ke registri pusat yang terpisah. Ini dapat mengosongkan ruang yang cukup besar di host Anda.

Penggunaan Direktori Data Berbeda Sekali-Sekali

Anda dapat memulai Docker Engine secara manual dengan direktori data tertentu dengan meneruskan flag –data-root saat Anda memulai daemon. Ini dapat digunakan untuk beralih di antara direktori data atau menjalankan instance bersih tanpa data Anda yang sudah ada.

$ sudo /usr/bin/dockerd –data-root /mnt/docker-data

Bendera akan menimpa jalur direktori yang ditentukan oleh daemon. berkas json. Direktori yang dikonfigurasi akan tetap utuh sehingga Anda dapat kembali ke instance itu di masa mendatang.

Docker menyimpan semua datanya termasuk gambar yang dibuat dan ditarik, wadah yang dibuat, dan volume dalam satu pohon direktori. Root biasanya /var/lib/docker tetapi Anda dapat menyesuaikannya dengan menambahkan pengaturan ke file konfigurasi Anda atau menyediakan flag –data-root ketika Anda memulai daemon.

Mengubah direktori data berarti data Anda yang ada tidak akan muncul di Docker kecuali Anda menyalinnya ke jalur baru. Anda dapat menggunakan fitur ini untuk memelihara beberapa repositori penyimpanan Docker independen, seperti satu untuk proyek pribadi dan satu lagi untuk pekerjaan. Anda harus memulai ulang daemon sebelum beralih konteks, karena hanya satu instance yang dapat berjalan secara bersamaan.

Itulah berita seputar Cara Menyimpan Gambar dan Wadah Docker di Drive Eksternal, semoga bermanfaat. Disadur dari HowToGeek.com.