GNU/Linux >> Belajar Linux >  >> Panels >> Docker

Menjelaskan Volume Docker Dengan Contoh

Dalam kasus Docker , data akan disimpan di dalam wadah. Dan ketika kita menghapus data container tersebut akan hilang. Dalam panduan ini, kita akan mempelajari cara membuat volume buruh pelabuhan, cara memasangnya ke wadah, dan bagaimana volume yang sama dapat dibagikan di dua wadah atau lebih untuk menyimpan data.

Jika Anda belum mengetahui dasar-dasar buruh pelabuhan, lihat panduan berikut:

  • Memulai Docker

Mengapa kami memerlukan volume untuk Docker?

  • Saat menghapus penampung, volume tidak akan terhapus.
  • Pasang atau lepaskan volume ke wadah.
  • Berbagi volume (penyimpanan/data) di antara penampung yang berbeda.
  • Memisahkan wadah dari penyimpanan.
  • Menyimpan volume di host jarak jauh atau cloud.

Kita dapat memiliki pembagian logika data serta wadah. Kami dapat menyimpan data sedemikian rupa sehingga jika kami menghapus
wadah maka juga data kita akan hadir. Jadi setelah menghancurkan wadah, kami dapat melampirkan volume ke wadah yang ada maupun wadah baru.

Memulai Dengan Volume Docker

Volume buruh pelabuhan perintah akan menampilkan detail perintah volume yang dengannya kita dapat membuat volume, memeriksa tentang data detail volume, membuat daftar volume yang tersedia, dan menghapus volume.

# docker volume

Tampilkan bagian bantuan perintah "docker volume"

Membuat Volume Docker

Sintaks untuk membuat volume buruh pelabuhan adalah:

docker volume create <volume_name>

Contoh:

# docker volume create devops_volume

Perintah di atas akan membuat volume buruh pelabuhan bernama devops_volume .

buat volume buruh pelabuhan

Mencantumkan volume buruh pelabuhan

Untuk membuat daftar semua volume buruh pelabuhan yang dibuat, jalankan:

# docker volume ls

daftar volume buruh pelabuhan

Memeriksa volume buruh pelabuhan

pemeriksaan volume buruh pelabuhan perintah akan memberi Anda detail tentang pembuatan volume, lokasi, nama, dan cakupan.

Sintaks:

docker volume inspect <volume_name>

Mari saya tunjukkan detail volume buruh pelabuhan bernama devops_volume .

# docker volume inspect devops_volume

periksa volume buruh pelabuhan

Membuat wadah dengan volume yang menyertainya

Sintaks:

docker container create --name <container_name> -it --mount source<volume_name>,target=/<folder_Name> <image_name>

Contoh:

# docker container create --name myBusyBox1 -it --mount source=devops_volume,target=/app busybox

buat wadah dengan volume yang melekat padanya

Untuk memverifikasi apakah wadah telah dibuat atau belum, gunakan docker ps -a perintah:

keluaran perintah "docker ps"

Memulai container

Untuk memulai wadah yang baru dibuat, misalnya myBusyBox1 , jalankan:

# docker container start myBusyBox1

mulai wadah buruh pelabuhan

Seperti yang Anda lihat pada tangkapan layar di atas, wadah myBusyBox1 telah dibuat 8 menit yang lalu dan dimulai 6 detik yang lalu.

Menyalin file antar wadah dari volume bersama

Mari kita buat skenario di mana kita akan membuat file dalam satu wadah di lokasi bersama dan kami akan mencoba mengakses file dari wadah lain.

Kami telah membuat wadah bernama myBusyBox1. Mari kita buat yang lain, misalnya myBusyBox2 .

buat wadah

Sekarang kita memiliki dua kontainer dalam keadaan berjalan, myBusyBox1 dan myBusyBox2.

Mari kita sambungkan ke wadah pertama dan buat file di dalam /aplikasi folder.

# docker exec -it myBusyBox1 sh

Perintah di atas akan membawa Anda ke dalam container.

Kemudian, buat folder baru bernama devops di dalam folder /app dan keluar dari wadah pertama.

sambungkan ke wadah pertama

Sekarang, salin file, misalnya index.html , dari sistem lokal ke dalam lokasi /app/devops/ dari wadah myBusyBox1.

# docker container cp index.html myBusyBox1:/app/Devops

Sekarang sambungkan ke wadah kedua lainnya yaitu myBusyBox2 dan verifikasi itu di dalam /app/devops folder index.html file ada atau tidak.

# docker exec -it myBusyBox2 sh

sambungkan ke wadah kedua

Dari tangkapan layar di atas, dipastikan bahwa kedua wadah berbagi volume yang sama.

Kami dapat memeriksa lokasi Mountpoint volume menggunakan docker volume inspect perintah seperti di bawah ini:

# docker volume inspect devops_volume

docker memeriksa perintah volume

Seperti yang Anda lihat, lokasi mountpoint adalah /var/lib/docker/volumes/devops_volume/_data .

Mari kita pergi ke lokasi mountpoint dan melihat apakah file yang disalin tersedia atau tidak.

titik mount volume buruh pelabuhan

Di lokasi Mountpoint kami menemukan file yang sama.

Hapus volume buruh pelabuhan

Sintaks untuk menghapus volume adalah:

docker volume rm <volume_name>

Mari kita hapus volume yang disebut devops_volume .

# docker volume rm devops_volume

hapus volume buruh pelabuhan

Pada tangkapan layar di atas, kami mencoba menghapus volume tetapi tidak dapat menghapus karena volume sudah digunakan. Jadi pertama-tama kita perlu mematikan wadah dan membuat volume gratis. Dan kemudian kita dapat menghapus volumenya.

Untuk melakukannya, pertama-tama hapus semua container yang sedang berjalan menggunakan perintah:

# docker rm –f $(docker ps -aq)

Dan kemudian hapus volumenya:

# docker volume rm devops_volume

hapus volume buruh pelabuhan

Hapus semua volume sekaligus

Menggunakan docker rm perintah, kita dapat menghapus satu volume pada satu waktu. Jika kita memiliki banyak volume dan ingin menghapus semua volume maka kita harus menggunakan prune perintah.

Mari kita buat beberapa volume:

buat volume buruh pelabuhan

Sekarang hapus semua volume buruh pelabuhan sekaligus menggunakan perintah:

# docker volume prune

hapus semua volume buruh pelabuhan sekaligus

Lihat? Kami telah menghapus semua volume sekaligus.

Bacaan yang disarankan:

  • Menjelaskan Konsep Jaringan Docker
  • Cara Memperbarui Wadah Docker yang Berjalan Secara Otomatis
  • ctop – Alat Pemantau Baris Perintah Untuk Wadah Linux
  • Portainer – Cara Termudah Mengelola Docker
  • PiCluster – Aplikasi Manajemen Docker Berbasis Web Sederhana
  • Dockly – Kelola Kontainer Docker Dari Terminal

Tentang Penulis:

Dhruv Tiwari adalah Insinyur DevOps yang suka mengotomatisasi berbagai hal, bekerja dengan Linux dalam skala besar dan memimpikan hari ketika sistem cukup pintar untuk tidak perlu masuk ke kotak Linux. Perjalanan CI/CD dari kode sumber ke penerapan kode hingga produksi.


Docker
  1. Log Docker:Apa Itu dan Bagaimana Menggunakannya (dengan Contoh)

  2. Membuat volume logis di Linux dengan LVM

  3. Memahami Volume Docker

  1. Apa itu Doker? Pelajari Cara Menggunakan Wadah – Dijelaskan dengan Contoh

  2. Cara Menginstal Jenkins dengan Docker

  3. Perluas dan kecilkan volume dengan Manajemen Disk

  1. Cara Melakukan Perubahan pada Gambar Docker dengan Contoh

  2. Volume Docker:Cara Membuat &Memulai

  3. Volume Docker NFS:Cara Membuat dan Menggunakan