Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Referensi berkas definisi gambar
Bagian ini hanya referensi. Untuk informasi tentang membuat pipeline dengan sumber atau menyebarkan tindakan untuk kontainer, lihatBuat pipeline di CodePipeline.
AWS CodePipelinepekerja pekerjaan untuk tindakan kontainer, seperti tindakan sumber Amazon ECR atau tindakan penyebaran Amazon ECS, menggunakan file definisi untuk memetakan URI gambar dan nama kontainer ke definisi tugas. Setiap file definisi adalah file berformat JSON yang digunakan oleh penyedia tindakan sebagai berikut:
-
Penerapan standar Amazon ECS memerlukan
imagedefinitions.json
file sebagai masukan ke tindakan penyebaran. -
Deployment biru/hijau Amazon ECS memerlukan
imageDetail.json
file sebagai masukan ke tindakan penyebaran.-
Tindakan sumber Amazon ECR menghasilkan
imageDetail.json
file yang disediakan sebagai output dari aksi sumber.
-
Topik
file imagedefinitions.json untuk tindakan penerapan standar Amazon ECS
Dokumen definisi gambar adalah file JSON yang menjelaskan nama kontainer Amazon ECS Anda serta gambar serta tag. Jika Anda menerapkan aplikasi berbasis kontainer, Anda harus membuat file definisi gambar untuk menyediakan CodePipeline job worker dengan kontainer Amazon ECS dan identifikasi gambar untuk diambil dari repositori gambar, seperti Amazon ECR.
catatan
Nama file default untuk file tersebut adalahimagedefinitions.json
. Jika Anda memilih untuk menggunakan nama file yang berbeda, Anda harus memberikannya saat membuat tahap deployment Alur.
Buatimagedefinitions.json
berkas dengan pertimbangan berikut:
-
File harus menggunakan pengodean UTF-8.
-
Batas ukuran file maksimum untuk file definisi gambar adalah 100 KB.
-
Anda harus membuat file sebagai sumber atau membangun artefak sehingga merupakan artefak masukan untuk aksi penyebaran. Dengan kata lain, pastikan file tersebut diunggah ke lokasi sumber Anda, seperti file Anda CodeCommit repositori, atau dihasilkan sebagai artefak keluaran dibangun.
Klasterimagedefinitions.json
file memberikan nama kontainer dan URI gambar. Itu harus dibangun dengan set pasangan nilai kunci berikut.
Kunci | Nilai |
---|---|
nama | container_name |
imageUri | imageUri |
Berikut adalah struktur JSON, di mana nama kontainersample-app
, URI gambar adalahecs-repo
, dan taglatest
:
[ { "name": "sample-app", "imageUri": "11111EXAMPLE.dkr.ecr.us-west-2.amazonaws.com/ecs-repo:latest" } ]
Anda juga dapat membuat file untuk mencantumkan beberapa pasangan kontainer-image.
Struktur JSON:
[ { "name": "simple-app", "imageUri": "httpd:2.4" }, { "name": "simple-app-1", "imageUri": "mysql" }, { "name": "simple-app-2", "imageUri": "java1.8" } ]
Sebelum Anda membuat Alur, gunakan langkah-langkah berikut untuk menyiapkanimagedefinitions.json
berkas.
-
Sebagai bagian dari perencanaan penerapan aplikasi berbasis kontainer untuk pipeline Anda, rencanakan tahap sumber dan tahap pembuatan, jika berlaku.
-
Pilih salah satu dari berikut:
-
Jika pipeline Anda dibuat sehingga melewati tahap pembangunan, Anda harus membuat file JSON secara manual dan mengunggahnya ke repositori sumber Anda sehingga aksi sumber dapat menyediakan artefak. Buat file menggunakan editor teks, dan beri nama file atau gunakan default
imagedefinitions.json
Nama file. Dorong file definisi gambar ke repositori sumber Anda.catatan
Jika repositori sumber Anda adalah bucket Amazon S3, ingatlah untuk melakukan zip file JSON.
-
Jika pipeline Anda memiliki tahap pembangunan, tambahkan perintah ke file spesifikasi build yang mengeluarkan file definisi gambar di repositori sumber Anda selama fase build. Contoh berikut menggunakanprintfperintah untuk membuat
imagedefinitions.json
berkas. Cantumkan perintah ini dipost_build
bagianbuildspec.yml
berkas:printf '[{"name":"
container_name
","imageUri":"image_URI
"}]' > imagedefinitions.jsonAnda harus menyertakan file definisi gambar sebagai artefak keluaran di
buildspec.yml
berkas.
-
-
Saat Anda membuat pipeline di konsol, diDeployhalamanMembuat Alurwizard, diNama File Gambar, masukkan nama file definisi gambar.
Untuk step-by-step tutorial untuk membuat pipeline yang menggunakan Amazon ECS sebagai penyedia penyebaran, lihatTutorial: Deployment kontintintinu CodePipeline.
File ImageDetail.json untuk tindakan penyebaran biru/hijau Amazon ECS
SesiimageDetail.json
document adalah file JSON yang menjelaskan URI gambar Amazon ECS Anda. Jika Anda menerapkan aplikasi berbasis kontainer untuk penyebaran biru/hijau, Anda harus menghasilkanimageDetail.json
file untuk menyediakan Amazon ECS dan CodeDeployjob worker dengan identifikasi gambar untuk diambil dari repositori gambar, seperti Amazon ECR.
catatan
Nama file harusimageDetail.json
.
Untuk deskripsi tindakan dan parameternya, lihatAmazon Elastic Container danCodeDeploy biru-hijau.
Anda harus membuatimageDetail.json
file sebagai sumber atau membangun artefak sehingga merupakan artefak masukan untuk tindakan penyebaran. Anda dapat menggunakan salah satu metode ini untuk menyediakanimageDetail.json
file dalam pipa:
-
Sertakan
imageDetail.json
file di lokasi sumber Anda sehingga disediakan dalam pipeline sebagai input ke tindakan penyebaran biru/hijau Amazon ECS Anda.catatan
Jika repositori sumber Anda adalah bucket Amazon S3, ingatlah untuk melakukan zip file JSON.
-
Tindakan sumber Amazon ECR secara otomatis menghasilkan
imageDetail.json
file sebagai artefak masukan untuk tindakan berikutnya.catatan
Karena tindakan sumber Amazon ECR membuat file ini, pipeline dengan tindakan sumber Amazon ECR tidak perlu menyediakan file secara manual
imageDetail.json
berkas.Untuk tutorial tentang membuat pipeline yang menyertakan tahap sumber Amazon ECR, lihatTutorial: Membuat pipeline dengan sumber Amazon ECR dan penerapan ECS-to- CodeDeploy .
KlasterimageDetail.json
file menyediakan URI gambar. Itu harus dibangun dengan pasangan nilai kunci berikut.
Kunci | Nilai |
---|---|
ImageURI | Image_URI |
Sebelum Anda membuat Alur, gunakan langkah-langkah berikut untuk menyiapkanimageDetail.json
berkas.
-
Sebagai bagian dari perencanaan penerapan biru/hijau aplikasi berbasis kontainer untuk pipeline Anda, rencanakan tahap sumber dan tahap pembuatan, jika berlaku.
-
Pilih salah satu dari berikut:
-
Jika pipeline Anda telah melewati tahap pembangunan, Anda harus membuat file JSON secara manual dan mengunggahnya ke repositori sumber Anda, seperti CodeCommit, sehingga aksi sumber dapat memberikan artefak. Buat file menggunakan editor teks, dan beri nama file atau gunakan default
imageDetail.json
Nama file. DorongimageDetail.json
file ke repositori sumber Anda. -
Jika pipeline Anda memiliki tahap build, lakukan hal berikut:
-
Tambahkan perintah ke file spesifikasi build yang mengeluarkan file definisi gambar di repositori sumber Anda selama fase pembangunan. Contoh berikut menggunakanprintfperintah untuk membuat
imageDetail.json
berkas. Cantumkan perintah ini dipost_build
bagian dari file buildspec.yml:printf '{"ImageURI":"
image_URI
"}' > imageDetail.jsonAnda harus menyertakan
imageDetail.json
file sebagai artefak keluaran dibuildspec.yml
berkas. -
Tambahkan
imageDetail.json
sebagai file artefak dibuildspec.yml
berkas.artifacts: files: - imageDetail.json
-
-