Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Referensi file definisi gambar
Bagian ini hanya referensi. Untuk informasi tentang membuat pipeline dengan tindakan sumber atau penerapan untuk kontainer, lihatBuat pipeline, tahapan, dan tindakan.
AWS CodePipeline pekerja pekerjaan untuk tindakan kontainer, seperti tindakan sumber Amazon ECR atau tindakan penyebaran Amazon ECS, menggunakan file definisi untuk memetakan URI gambar dan nama wadah ke definisi tugas. Setiap file definisi adalah JSON-formatted file yang digunakan oleh penyedia tindakan sebagai berikut:
-
Penerapan standar Amazon ECS memerlukan
imagedefinitions.jsonfile sebagai masukan untuk tindakan penerapan. Untuk tutorial yang menggunakan tindakan penerapan standar Amazon ECS di CodePipeline, lihatTutorial: Penyebaran Standar Amazon ECS dengan CodePipeline. Untuk contoh tutorial lain yang menggunakan tindakan penerapan standar Amazon ECS CodePipeline bersama dengan ECRBuildAndPublish tindakan, lihatTutorial: Membangun dan mendorong gambar Docker ke Amazon ECR dengan CodePipeline (tipe V2). -
Penerapan Amazon blue/green ECS memerlukan
imageDetail.jsonfile sebagai masukan untuk tindakan penerapan. Untuk tutorial dengan blue/green penerapan sampel, lihatTutorial: Buat pipeline dengan sumber dan ECS-to-CodeDeploy penerapan Amazon ECR.-
Tindakan sumber Amazon ECR menghasilkan
imageDetail.jsonfile yang disediakan sebagai output dari tindakan sumber.
-
Topik
file imagedefinitions.json untuk tindakan penerapan standar Amazon ECS
Dokumen definisi gambar adalah file JSON yang menjelaskan nama wadah Amazon ECS Anda dan gambar serta tag. Jika Anda menerapkan aplikasi berbasis kontainer, Anda harus membuat file definisi gambar untuk menyediakan wadah Amazon ECS dan identifikasi gambar kepada pekerja CodePipeline pekerjaan 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 penyebaran pipeline.
Buat imagedefinitions.json file dengan pertimbangan berikut:
-
File harus menggunakan UTF-8 encoding.
-
Batas ukuran file maksimum untuk file definisi gambar adalah 100 KB.
-
Anda harus membuat file sebagai sumber atau membangun artefak sehingga merupakan artefak input untuk tindakan penerapan. Dengan kata lain, pastikan bahwa file tersebut diunggah ke lokasi sumber Anda, seperti CodeCommit repositori Anda, atau dihasilkan sebagai artefak keluaran bawaan.
imagedefinitions.jsonFile menyediakan nama wadah dan URI gambar. Itu harus dibangun dengan set pasangan kunci-nilai berikut.
| Key | Nilai |
|---|---|
| name | container_name |
| ImageURI | imageUri |
catatan
Bidang nama digunakan untuk nama gambar wadah, yang berarti nama untuk gambar Docker.
Berikut adalah struktur JSON, di mana nama wadah adalahsample-app, URI gambarecs-repo, dan tagnya adalahlatest:
[ { "name": "sample-app", "imageUri": "11111EXAMPLE.dkr.ecr.us-west-2.amazonaws.com/ecs-repo:latest" } ]
Anda juga dapat membangun file untuk mencantumkan beberapa pasangan image-container.
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 pipeline, gunakan langkah-langkah berikut untuk mengatur imagedefinitions.json file.
-
Sebagai bagian dari perencanaan penerapan aplikasi berbasis container untuk pipeline Anda, rencanakan tahap sumber dan tahap pembuatan, jika ada.
-
Pilih salah satu cara berikut:
-
Jika pipeline Anda dibuat sehingga melewati tahap pembuatan, Anda harus membuat file JSON secara manual dan mengunggahnya ke repositori sumber Anda sehingga tindakan sumber dapat menyediakan artefak. Buat file menggunakan editor teks, dan beri nama file atau gunakan nama
imagedefinitions.jsonfile default. Dorong file definisi gambar ke repositori sumber Anda.catatan
Jika repositori sumber Anda adalah bucket Amazon S3, ingatlah untuk zip file JSON.
-
Jika pipeline Anda memiliki tahap build, tambahkan perintah ke file buildspec Anda yang mengeluarkan file definisi gambar di repositori sumber Anda selama fase build. Contoh berikut menggunakan printf perintah untuk membuat
imagedefinitions.jsonfile. Cantumkan perintah ini dipost_buildbagianbuildspec.ymlfile:printf '[{"name":"container_name","imageUri":"image_URI"}]' > imagedefinitions.jsonAnda harus menyertakan file definisi gambar sebagai artefak keluaran dalam
buildspec.ymlfile.
-
-
Saat Anda membuat pipeline di konsol, pada halaman Deplo y wizard Buat Pipeline, di Nama File Gambar, masukkan nama file definisi gambar.
Untuk tutorial langkah demi langkah untuk membuat pipeline yang menggunakan Amazon ECS sebagai penyedia penerapan, lihat Tutorial: Penerapan Berkelanjutan dengan CodePipeline.
Detail.json file gambar untuk tindakan blue/green penyebaran Amazon ECS
Dok imageDetail.json umen adalah file JSON yang menjelaskan URI gambar Amazon ECS Anda. Jika Anda menerapkan aplikasi berbasis container untuk penerapan, Anda harus membuat blue/green imageDetail.json file tersebut untuk memberikan identifikasi gambar kepada Amazon ECS dan pekerja CodeDeploy pekerjaan untuk diambil dari repositori gambar, seperti Amazon ECR.
catatan
Nama file harusimageDetail.json.
Untuk deskripsi tindakan dan parameternya, lihatAmazon Elastic Container Service dan referensi tindakan CodeDeploy penerapan biru-hijau.
Anda harus membuat imageDetail.json file sebagai sumber atau membangun artefak sehingga merupakan artefak input untuk tindakan penerapan. Anda dapat menggunakan salah satu metode ini untuk menyediakan imageDetail.json file dalam pipeline:
-
Sertakan
imageDetail.jsonfile di lokasi sumber Anda sehingga disediakan dalam pipeline sebagai masukan untuk tindakan blue/green penerapan Amazon ECS Anda.catatan
Jika repositori sumber Anda adalah bucket Amazon S3, ingatlah untuk zip file JSON.
-
Tindakan sumber Amazon ECR secara otomatis menghasilkan
imageDetail.jsonfile sebagai artefak masukan untuk tindakan berikutnya.catatan
Karena tindakan sumber Amazon ECR membuat file ini, pipeline dengan tindakan sumber Amazon ECR tidak perlu menyediakan
imageDetail.jsonfile secara manual.Untuk tutorial tentang membuat pipeline yang menyertakan tahap sumber Amazon ECR, lihatTutorial: Buat pipeline dengan sumber dan ECS-to-CodeDeploy penerapan Amazon ECR.
imageDetail.jsonFile menyediakan URI gambar. Itu harus dibangun dengan pasangan kunci-nilai berikut.
| Key | Nilai |
|---|---|
| ImageURI | image_URI |
Sebelum Anda membuat pipeline, gunakan langkah-langkah berikut untuk mengatur imageDetail.json file.
-
Sebagai bagian dari perencanaan penerapan aplikasi berbasis container blue/green untuk pipeline Anda, rencanakan tahap sumber dan tahap pembuatan, jika ada.
-
Pilih salah satu cara berikut:
-
Jika pipeline Anda telah melewati tahap pembuatan, Anda harus membuat file JSON secara manual dan mengunggahnya ke repositori sumber Anda, seperti CodeCommit, sehingga tindakan sumber dapat menyediakan artefak. Buat file menggunakan editor teks, dan beri nama file atau gunakan nama
imageDetail.jsonfile default. DorongimageDetail.jsonfile ke repositori sumber Anda. -
Jika pipeline Anda memiliki tahap pembuatan, lakukan hal berikut:
-
Tambahkan perintah ke file buildspec Anda yang mengeluarkan file definisi gambar di repositori sumber Anda selama fase pembuatan. Contoh berikut menggunakan printf perintah untuk membuat
imageDetail.jsonfile. Cantumkan perintah ini dipost_buildbagian file buildspec.yml:printf '{"ImageURI":"image_URI"}' > imageDetail.jsonAnda harus menyertakan
imageDetail.jsonfile sebagai artefak keluaran dalambuildspec.ymlfile. -
Tambahkan
imageDetail.jsonsebagai file artefak dalambuildspec.ymlfile.artifacts: files: - imageDetail.json
-
-