Fitur Volume Docker
- Berbagi data volume dan penyimpanan di antara beberapa wadah dan sistem file host.
- Memisahkan wadah dari penyimpanan.
- Tidak menghapus data yang terkandung saat menghapus wadah.
- Cadangkan, pulihkan, dan migrasikan data dengan mudah.
Dalam tutorial ini, kami akan menjelaskan apa itu volume Docker dan cara menggunakannya, serta cara memasang volume di Docker.
Persyaratan
- Sistem yang menjalankan Linux dengan Docker terpasang.
- Kata sandi root dikonfigurasi.
Sintaks Dasar Volume Docker
Anda dapat menggunakan perintah "docker volume" untuk melihat semua opsi yang tersedia dengan volume:
volume buruh pelabuhanAnda akan melihat output berikut setelah memasukkan perintah di atas:
Penggunaan: COMMAND volume buruh pelabuhanKelola volume
Perintah:
buat Buat volume
periksa Tampilkan informasi terperinci pada satu atau lebih volume
ls Daftar volume
prune Hapus semua volume lokal yang tidak digunakan
rm Hapus satu atau lebih volume
Jalankan 'docker volume COMMAND --help' untuk informasi lebih lanjut tentang sebuah perintah.
Buat Volume
Untuk membuat volume data, pertama-tama Anda harus membuat volume data di host Docker dan melampirkan volume ke wadah.
Anda dapat membuat volume Docker menggunakan perintah “docker volume create.Misalnya, gunakan perintah berikut untuk membuat volume Docker baru bernama myvolume:
volume buruh pelabuhan buat volume sayaAnda akan melihat output berikut:
volume sayaAnda dapat membuat daftar volume yang ada menggunakan perintah berikut:
volume buruh pelabuhan lsAnda akan melihat output berikut:
NAMA VOLUME PENGEMUDIc2d2815ba1a75fbfe5d0a4b69d94269e55ccbc138c7d2e19504e501f1dbe634f lokal
volume saya lokal
Jika Anda ingin melihat informasi lebih lanjut tentang volume, jalankan perintah berikut:
buruh pelabuhan memeriksa myvolumeAnda harus mendapatkan output berikut setelah menjalankan perintah di atas:
["CreatedAt": "2020-09-12T04:51:31Z",
"Pengemudi": "lokal",
"Label": ,
"Mountpoint": "/var/lib/docker/volumes/myvolume/_data",
"Nama": "volume saya",
"Pilihan": ,
"Cakupan": "lokal"
]
Pasang Volume
Pada titik ini, Anda memiliki satu volume bernama myvolume. Dalam contoh ini, Anda akan membuat wadah dan memasang myvolume ke wadah.
Anda dapat menggunakan opsi -mount untuk memasang volume. Sintaks dasar untuk memasang volume ke wadah ditunjukkan di bawah ini:
docker run --mount source=volume-name,destination=path-inside-container docker-imagesMisalnya, untuk membuat wadah Ubuntu dan memasang myvolume ke wadah, jalankan perintah berikut:
docker run -it --name=volumecontainer --mount source=myvolume,destination=/data ubuntuPerintah ini akan menarik image Ubuntu dari Docker Hub, memulai container dalam mode interaktif dengan nama volumecontainer, dan memasang container myvolume ke /data di dalam direktori /data:
Tidak dapat menemukan gambar 'ubuntu: terbaru' secara lokalterbaru: Menarik dari perpustakaan/ubuntu
54ee1f796a1e: Tarik selesai
f7bfea53ad12: Tarik selesai
46d371e02073: Tarik selesai
b66c17bbf772: Tarik selesai
Intisari: sha256:31dfb10d52ce76c5ca0aa19d10b3e6424b830729e32a89a7c6eee2cda2be67a5
Status: Mengunduh gambar yang lebih baru untuk ubuntu: terbaru
root@06a477c4e444:/#
Anda dapat memeriksa volume yang dipasang dengan perintah berikut:
[dilindungi email]:/# lsAnda akan melihat direktori data dalam output berikut:
bin boot data dev dll home lib lib32 lib64 libx32 media mntopt proc root run sbin srv sys tmp usr var
Sekarang, kita akan membuat file sampel bernama file.txt di dalam direktori /data dengan perintah berikut:
echo "Ini adalah file percobaan!" > /data/file.txtKeluar dari wadah dengan perintah berikut:
keluarMulai wadah yang sama lagi dengan perintah berikut:
wadah buruh pelabuhan mulai wadah volumeSelanjutnya, lampirkan wadah yang sedang berjalan dengan perintah berikut:
docker exec -it volumecontainer /bin/bashPeriksa apakah file Anda.txt persisten dengan yang berikut:
data/file kucing.txtAnda harus mendapatkan output berikut setelah memasukkan perintah di atas:
Ini adalah berkas uji coba!
Bagikan Data Antar Kontainer
Anda juga dapat berbagi data antara beberapa wadah menggunakan volume Docker.
Seperti yang Anda ketahui, kami telah membuat volume bernama myvolume wadah baru bernama volumecontainer menggunakan volume ini. Kami juga telah membuat file bernama file.txt di dalam volume.
Sekarang, kita akan membuat wadah lain bernama volumecontainer1 dengan volume myvolume yang sama menggunakan perintah berikut:
docker run -it --name=volumecontainer1 --mount source=myvolume,destination=/data ubuntuJalankan perintah ls, seperti yang ditunjukkan di bawah ini:
lsAnda akan melihat direktori data dalam output berikut:
bin boot data dev dll home lib lib32 lib64 libx32media mnt opt proc root run sbin srv sys tmp usr var
Jalankan perintah berikut untuk memeriksa file.txt:
cat /data/file.txtAnda akan melihat konten yang sama yang Anda buat di wadah sebelumnya:
Ini adalah berkas uji coba!
Pasang Direktori sebagai Volume
Anda dapat menggunakan direktori yang terletak di dalam sistem host Docker Anda sebagai volume dan memasangnya ke wadah. Anda juga dapat menggunakan opsi -v untuk mencapai hal yang sama, seperti yang ditunjukkan di bawah ini:
docker run -v "directory_name":volume_name docker_imageBuat direktori bernama /data di dalam host Docker dengan perintah berikut:
mkdir /DataSelanjutnya, buat beberapa file di dalam direktori /Data:
cd /datasentuh file1.file txt2.file txt3.txt
Buat wadah baru menggunakan direktori /Data sebagai volume dengan perintah berikut:
docker run -it --name=data1 -v /Data:/Data ubuntuPerintah ini akan membuat wadah baru dan memasang volume dengan nama /Data.
Jalankan perintah berikut untuk memeriksa konten direktori /Data:
ls -l /Data/Anda akan melihat semua file yang telah kami buat sebelumnya di sistem host, seperti yang ditunjukkan di bawah ini:
jumlah 0-rw-r--r-- 1 root root 0 Sep 12 05:41 file1.txt
-rw-r--r-- 1 root root 0 Sep 12 05:41 file2.txt
-rw-r--r-- 1 root root 0 Sep 12 05:41 file3.txt
Hapus Volume Docker
Anda dapat dengan mudah menghapus atau menghapus volume menggunakan sintaks berikut:
docker volume rm volume-namaMisalnya, untuk menghapus volume bernama myvolume, jalankan perintah berikut:
volume buruh pelabuhan rm myvolumeAnda harus mendapatkan kesalahan berikut:
Respons kesalahan dari daemon: hapus myvolume:volume sedang digunakan - [06a477c4e4444c0f815a1ec4a151a8
339bf53d5060c492af867bcaebe531dd5d, fd8d05a027a755f
1df004ccf62568b5d66989c2112115c8a652ddbc8eb960948]
Ini karena volume Anda digunakan oleh wadah. Jadi, Anda harus berhenti dan mengeluarkan wadah sebelum mengeluarkan volume.
Untuk menghentikan dan menghapus wadah, jalankan perintah berikut:
docker container stop volumecontainer volumecontainer1kontainer buruh pelabuhan rm volumekontainer volumekontainer1
Sekarang, Anda dapat dengan mudah menghapus volume.
Kesimpulan
Dalam panduan di atas, Anda mempelajari apa itu volume Docker, cara membuatnya, dan cara memasangnya di dalam wadah. Anda juga belajar cara berbagi data di antara beberapa wadah menggunakan volume.