Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Gunakan bind mount dengan Amazon ECS
Dengan bind mount, file atau direktori pada host, seperti EC2 instance Amazon, dipasang ke dalam wadah. Bind mount didukung untuk tugas yang di-host di instance Fargate dan Amazon. EC2 Dudukan pengikat diikat ke siklus hidup wadah yang menggunakannya. Setelah semua kontainer yang menggunakan bind mount dihentikan, seperti saat tugas dihentikan, data akan dihapus. Untuk tugas yang di-host di EC2 instans Amazon, data dapat dikaitkan dengan siklus hidup EC2 instans Amazon host dengan menentukan sourcePath
nilai host
dan opsional dalam definisi tugas Anda. Untuk informasi selengkapnya, lihat Bind mount
Berikut ini adalah kasus penggunaan umum untuk pemasangan terikat.
-
Untuk menyediakan volume data kosong untuk memasang dalam satu atau lebih kontainer.
-
Untuk memasang volume data host dalam satu atau lebih kontainer.
-
Untuk berbagi volume data dari kontainer sumber dengan kontainer lain dalam tugas yang sama.
-
Untuk mengekspos jalur dan isinya dari Dockerfile ke satu atau lebih kontainer.
Pertimbangan saat menggunakan pemasangan terikat
Saat menggunakan bind mount, pertimbangkan hal berikut.
-
Secara default, tugas yang di-host saat AWS Fargate menggunakan versi platform
1.4.0
atau yang lebih baru (Linux)1.0.0
atau yang lebih baru (Windows) menerima minimal 20 GiB penyimpanan sementara untuk bind mount. Anda dapat meningkatkan jumlah total penyimpanan sementara hingga maksimum 200 GiB dengan menentukanephemeralStorage
parameter dalam definisi tugas Anda. -
Untuk mengekspos file dari Dockerfile ke volume data saat tugas dijalankan, bidang data Amazon ECS mencari arahan.
VOLUME
Jika jalur absolut yang ditentukan dalamVOLUME
direktif sama dengan yang ditentukan dalam definisi tugas, data di jalurVOLUME
direktif akan disalin ke volume data.containerPath
Dalam contoh Dockerfile berikut, file yang diberi namaexamplefile
dalam/var/log/exported
direktori ditulis ke host dan kemudian dipasang di dalam wadah.FROM public.ecr.aws/amazonlinux/amazonlinux:latest RUN mkdir -p
/var/log/exported
RUN touch/var/log/exported/examplefile
VOLUME ["/var/log/exported
"]Secara default, izin volume diatur ke
0755
dan pemilik sebagairoot
. Anda dapat menyesuaikan izin ini di Dockerfile. Contoh berikut mendefinisikan pemilik direktori sebagainode
.FROM public.ecr.aws/amazonlinux/amazonlinux:latest RUN yum install -y shadow-utils && yum clean all RUN useradd
node
RUN mkdir -p /var/log/exported && chownnode
:node
/var/log/exported RUN touch /var/log/exported/examplefile USERnode
VOLUME ["/var/log/exported"] -
Untuk tugas yang di-host di EC2 instance Amazon, saat
sourcePath
nilaihost
dan tidak ditentukan, daemon Docker mengelola pemasangan pengikat untuk Anda. Ketika tidak ada kontainer yang mereferensikan pemasangan pengikat ini, layanan pembersihan tugas agen penampung Amazon ECS akhirnya menghapusnya. Secara default, ini terjadi tiga jam setelah wadah keluar. Namun, Anda dapat mengonfigurasi durasi ini dengan variabelECS_ENGINE_TASK_CLEANUP_WAIT_DURATION
agen. Untuk informasi selengkapnya, lihat Konfigurasi agen kontainer Amazon ECS. Jika Anda memerlukan data ini untuk bertahan di luar siklus hidup penampung, tentukansourcePath
nilai untuk bind mount.