Pemasangan terikat - Amazon Elastic Container Service

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Pemasangan terikat

Dengan pemasangan bind, file atau direktori pada host, seperti instans Amazon EC2, dipasang ke dalam wadah. Bind mount didukung untuk tugas yang di-host di instans Fargate dan Amazon EC2. Dudukan pengikat diikat ke siklus hidup wadah yang menggunakannya. Setelah semua container yang menggunakan bind mount dihentikan, seperti saat tugas dihentikan, data akan dihapus. Untuk tugas yang dihosting di instans Amazon EC2, data dapat dikaitkan dengan siklus hidup instans Amazon EC2 host dengan menentukan nilai dan opsional dalam definisi tugas Anda. host sourcePath Untuk informasi selengkapnya, lihat Menggunakan pemasangan terikat dalam dokumentasi Docker.

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.

  • Untuk tugas-tugas yang di-host AWS Fargate menggunakan versi platform 1.4.0 atau yang lebih baru (Linux) 1.0.0 atau yang lebih baru (Windows), secara default mereka menerima minimal 20 GiB penyimpanan sementara untuk bind mount. Untuk tugas Linux, jumlah total penyimpanan sementara dapat ditingkatkan hingga maksimum 200 GiB dengan menentukan ephemeralStorage parameter dalam definisi tugas Anda. Secara default, tugas Amazon ECS Windows yang di-host di Fargate menggunakan 1.0.0 versi platform atau yang lebih baru menerima minimal 20 GiB penyimpanan sementara. Anda dapat meningkatkan jumlah total penyimpanan sementara, hingga maksimum 200 GiB dengan menentukan ephemeralStorage 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 dalam VOLUME direktif sama dengan yang ditentukan dalam definisi tugas, data di jalur VOLUME direktif akan disalin ke volume data. containerPath Dalam contoh Dockerfile berikut, file yang diberi nama examplefile 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 sebagai root. Anda dapat menyesuaikan izin ini di Dockerfile. Contoh berikut mendefinisikan pemilik direktori sebagai node.

    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 && chown node:node /var/log/exported RUN touch /var/log/exported/examplefile USER node VOLUME ["/var/log/exported"]
  • Untuk tugas yang dihosting di instans Amazon EC2, saat sourcePath nilai host 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 variabel ECS_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, tentukan sourcePath nilai untuk bind mount.