GNU/Linux >> Belajar Linux >  >> Ubuntu

Volume Docker:Cara Membuat &Memulai

Pendahuluan

Volume Docker banyak digunakan dan alat yang berguna untuk memastikan kegigihan data saat bekerja dalam container. Mereka adalah alternatif yang lebih baik daripada mengkompilasi lapisan tambahan yang dapat ditulis, yang meningkatkan ukuran gambar Docker.

Dalam tutorial ini, pelajari cara menggunakan Volume Docker dengan contoh praktis.

Apa itu Volume Docker?

Volume Docker adalah sistem file yang dipasang pada container Docker untuk menyimpan data yang dihasilkan oleh container yang sedang berjalan.

Volume disimpan di host, terlepas dari siklus hidup container. Hal ini memungkinkan pengguna untuk mencadangkan data dan berbagi sistem file antar container dengan mudah.

Memulai Dengan Volume Docker

Ada berbagai cara untuk memasang volume Docker saat meluncurkan wadah. Pengguna dapat memutuskan antara -v dan --mount flag, yang ditambahkan ke docker run perintah.

Artikel ini menunjukkan contoh kedua flag yang digunakan.

Cara Membuat Volume Docker

Untuk membuat Volume Docker gunakan perintah:

docker volume create [volume_name]

Docker secara otomatis membuat direktori untuk volume pada host di bawah /var/lib/docker/volume/ jalur. Anda sekarang dapat memasang volume ini pada sebuah wadah, memastikan kegigihan data dan berbagi data di antara beberapa wadah.

Misalnya, untuk membuat volume dengan nama data , Anda akan menjalankan perintah:

docker volume create data

Mencantumkan Volume Docker

Untuk memverifikasi bahwa Anda telah berhasil membuat volume Docker, minta Docker untuk mencantumkan semua volume yang tersedia dengan:

docker volume list

Output menampilkan daftar volume, menentukan lokasinya (DRIVER ) dan NAMA VOLUME . Pada gambar di bawah, Anda dapat melihat volume data dibuat di bagian sebelumnya.

Memeriksa Volume Docker

Untuk melihat informasi lebih lanjut tentang volume Docker, gunakan inspect perintah:

docker volume inspect [volume_name]

Ini mencantumkan detail volume, termasuk lokasinya di file host (Mountpoint ). Semua yang disimpan dalam volume data juga dapat ditemukan di direktori yang terdaftar di bawah jalur mountpoint.

Memasang Volume Data

Untuk memasang volume data ke wadah, tambahkan --mount tandai ke docker run memerintah. Itu menambahkan volume ke wadah yang ditentukan, di mana ia menyimpan data yang dihasilkan di dalam lingkungan virtual.

Untuk menjalankan wadah dan memasang volume data ke dalamnya, ikuti sintaks dasar:

docker run --mount source=[volume_name],destination=[path_in_container] [docker_image]

Ganti [path_in_container] dengan jalur di mana Anda ingin menempatkan volume data dalam wadah. Semua yang disimpan di direktori itu juga secara otomatis disimpan di volume data di host.

Misalnya, untuk meluncurkan wadah Ubuntu dan memasang data volume untuk itu, jalankan:

docker run -it --name=example1 --mount source=data,destination=/data ubuntu

Perintah tersebut menginstruksikan Docker untuk menjalankan wadah dalam mode interaktif (-it ) dari gambar Ubuntu, dengan nama example1 , saat memasang data volume di /data direktori di dalam wadah.

Kemudian, periksa untuk memverifikasi volume berhasil dipasang dengan mencantumkan konten wadah:

ls

Temukan volume Docker di bawah nama yang ditentukan saat meluncurkan wadah. Dalam contoh ini, ini adalah data .

Menyalin File Antar Kontainer Dari Volume Bersama

Mari kita lihat bagaimana volume Docker memungkinkan Anda berbagi file antar container.

Untuk melakukannya, kami menggunakan volume dan wadah yang dibuat di bagian sebelumnya. Ini termasuk menjalankan perintah:

  • docker volume create data
  • docker run -it --name=example1 --mount source=data,destination=/data ubuntu

1. Setelah Anda beralih ke prompt perintah container, pindah ke direktori volume data:

cd data

2. Buat file sampel kosong menggunakan perintah sentuh:

touch sample1.txt

3. Sekarang, keluar dari wadah:

exit

4. Kemudian, luncurkan penampung baru example2 dengan volume data yang sama:

docker run -it --name=example2 --mount source=data,destination=/data ubuntu

5. Buat daftar isi wadah. Anda harus menemukan direktori data, seperti dalam contoh1 :

ls

6. Pindah ke direktori data dan daftar isinya:

cd data
ls

Keluarannya harus mencantumkan sample1.txt file yang Anda buat di penampung sebelumnya (example1 ).

Memasang Direktori Host sebagai volume Data

Anda juga dapat memasang direktori yang ada dari mesin host ke wadah. Jenis volume ini disebut Volume Host .

Anda dapat memasang volume host dengan menggunakan -v menandai dan menentukan nama direktori host.

Segala sesuatu di dalam direktori Host kemudian tersedia dalam wadah. Terlebih lagi, semua data yang dihasilkan di dalam wadah dan ditempatkan di volume data disimpan dengan aman di direktori host.

Sintaks dasar untuk memasang direktori host adalah:

docker run -v "$(pwd)":[volume_name] [docker_image]

"$(pwd)" atribut menginstruksikan Docker untuk memasang direktori tempat pengguna saat ini berada.

Contoh berikut menjelaskan cara melakukannya.

1. Pertama, buat direktori sampel pada host dengan nama tmp dan pindah ke dalamnya:

mkdir tmp
cd tmp

2. Setelah berada di dalam direktori, buat file uji untuk melihat apakah itu akan tersedia dari wadah:

touch file.txt

2. Kemudian, gunakan docker run perintah untuk meluncurkan wadah Ubuntu dengan direktori host terlampir padanya:

docker run -it -v "$(pwd)":/data1 ubuntu

Ini meluncurkan wadah dalam mode interaktif dan memasang volume dengan nama data1 .

3. Buat daftar konten penampung dan verifikasi bahwa ada data1 direktori:

ls

4. Buka direktori mount dan daftar konten. Outputnya akan menampilkan file yang Anda buat di host:

cd data1
ls

Izin dan Kepemilikan Volume

Van izin volume diubah dengan mengonfigurasi kepemilikan dalam Dockerfile.

Gunakan RUN instruksi dan chown perintah untuk mengatur izin volume Docker. Pastikan instruksi ini mendahului baris yang mendefinisikan VOLUME .

Atau, Anda dapat mengubah kepemilikan direktori yang digunakan sebagai volume host.

Untuk petunjuk tentang cara menggunakan chown perintah, lihat Tutorial Izin File Linux:Cara Memeriksa Dan Mengubah Izin.

Cara Menghapus Volume Docker

Untuk menghapus volume Docker, Anda perlu menentukan namanya.

Sintaks dasar untuk menghapus volume Docker di baris perintah adalah:

docker volume rm [volume_name]

Docker menghapus volume hanya jika tidak digunakan saat ini. Jika ada wadah dengan volume yang ditentukan, ia merespons dengan kesalahan. Untuk melanjutkan, hentikan dan keluarkan wadah lalu jalankan kembali docker volume rm perintah.

Cara Menghapus Semua Volume Sekaligus

Untuk menghapus semua volume Docker yang tidak digunakan dengan satu perintah:

docker volume prune

Outputnya memperingatkan Anda bahwa itu akan menghapus semua volume lokal yang tidak digunakan oleh setidaknya satu wadah. Tekan y untuk melanjutkan.


Ubuntu
  1. Bagaimana Memulai Terjemahan?

  2. Cara Mendapatkan Informasi Tentang Kontainer Di Docker

  3. Cara mendapatkan pid dari proses yang baru saja dimulai

  1. Bagaimana Cara Membuat Partisi Lvm / Volume fisik> 2tb?

  2. Bagaimana Memulai Dengan Juju?

  3. Memahami Volume Docker

  1. Cara Menghapus Gambar, Wadah, Jaringan &Volume Docker

  2. Cara Membuat Gambar Docker dengan Dockerfile

  3. Volume Docker NFS:Cara Membuat dan Menggunakan