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 sumber atau tindakan penerapan untuk kontainer, lihatBuat pipeline di CodePipeline.
AWS CodePipeline pekerja pekerjaan untuk tindakan penampung, seperti tindakan sumber Amazon ECR atau tindakan penerapan 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 untuk tindakan penerapan. -
Penerapan biru/hijau Amazon ECS memerlukan
imageDetail.json
file sebagai masukan untuk tindakan penerapan.-
Tindakan sumber Amazon ECR menghasilkan
imageDetail.json
file 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 serta gambar dan 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 menyediakannya saat membuat tahap penyebaran pipeline.
Buat imagedefinitions.json
file dengan pertimbangan berikut:
-
File harus menggunakan pengkodean 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 input untuk tindakan penerapan. Dengan kata lain, pastikan file tersebut diunggah ke lokasi sumber Anda, seperti CodeCommit repositori Anda, atau dihasilkan sebagai artefak keluaran bawaan.
imagedefinitions.json
File ini menyediakan nama kontainer dan URI gambar. Itu harus dibangun dengan set pasangan kunci-nilai berikut.
Kunci | Nilai |
---|---|
name | container_name |
imageUri | ImageURI |
Berikut adalah struktur JSON, di mana nama kontainer adalahsample-app
, URI gambarecs-repo
, dan tag adalahlatest
:
[ { "name": "sample-app", "imageUri": "11111EXAMPLE.dkr.ecr.us-west-2.amazonaws.com/ecs-repo:latest" } ]
Anda juga dapat membuat file untuk mencantumkan beberapa pasangan gambar kontainer.
Struktur JSON:
[ { "name": "simple-app", "imageUri": "httpd:2.4" }, { "name": "simple-app-1", "imageUri": "mysql" }, { "name": "simple-app-2", "imageUri": "java1.8" } ]
Sebelum membuat pipeline, gunakan langkah-langkah berikut untuk menyiapkan imagedefinitions.json
file.
-
Sebagai bagian dari perencanaan penerapan aplikasi berbasis container untuk pipeline Anda, rencanakan tahap sumber dan tahap pembuatan, jika berlaku.
-
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.json
file 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 spesifikasi build yang menampilkan file definisi gambar di repositori sumber selama fase build. Contoh berikut menggunakan printf perintah untuk membuat
imagedefinitions.json
file. Buat daftar perintah ini dipost_build
bagianbuildspec.yml
file:printf '[{"name":"
container_name
","imageUri":"image_URI
"}]' > imagedefinitions.jsonAnda harus menyertakan file definisi gambar sebagai artefak keluaran dalam
buildspec.yml
file.
-
-
Saat Anda membuat pipeline di konsol, pada halaman Deploy wizard Create Pipeline, di Image Filename, masukkan nama file definisi gambar.
Untuk step-by-step tutorial membuat pipeline yang menggunakan Amazon ECS sebagai penyedia penyebaran, lihat Tutorial: Penerapan Berkelanjutan dengan. CodePipeline
File ImageDetail.json untuk tindakan penerapan biru/hijau Amazon ECS
imageDetail.json
Dokumen adalah file JSON yang menjelaskan URI gambar Amazon ECS Anda. Jika Anda menerapkan aplikasi berbasis kontainer untuk penerapan biru/hijau, Anda harus membuat file imageDetail.json
untuk memberikan identifikasi gambar Amazon ECS dan CodeDeploy job worker untuk diambil dari repositori gambar, seperti Amazon ECR.
catatan
Nama file harusimageDetail.json
.
Untuk deskripsi tindakan dan parameternya, lihatAmazon Elastic Container Service dan CodeDeploy 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.json
file di lokasi sumber Anda sehingga disediakan dalam pipeline sebagai masukan ke tindakan penerapan biru/hijau 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.json
file sebagai artefak masukan untuk tindakan selanjutnya.catatan
Karena tindakan sumber Amazon ECR membuat file ini, saluran pipa dengan tindakan sumber Amazon ECR tidak perlu menyediakan file secara manual.
imageDetail.json
Untuk tutorial tentang membuat pipeline yang menyertakan tahap sumber Amazon ECR, lihatTutorial: Membuat pipeline dengan sumber Amazon ECR dan penerapan ECS-to- CodeDeploy .
![](images/imageDetail_file_diagram.png)
imageDetail.json
File ini menyediakan URI gambar. Itu harus dibangun dengan pasangan kunci-nilai berikut.
Kunci | Nilai |
---|---|
ImageURI | Image_uri |
Sebelum membuat pipeline, gunakan langkah-langkah berikut untuk menyiapkan imageDetail.json
file.
-
Sebagai bagian dari perencanaan penerapan aplikasi biru/hijau berbasis container untuk pipeline Anda, rencanakan tahap sumber dan tahap pembuatan, jika berlaku.
-
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.json
file default. DorongimageDetail.json
file ke repositori sumber Anda. -
Jika pipeline Anda memiliki tahap build, lakukan hal berikut:
-
Tambahkan perintah ke file spesifikasi build Anda yang menampilkan file definisi gambar di repositori sumber Anda selama fase build. Contoh berikut menggunakan printf perintah untuk membuat
imageDetail.json
file. Buat daftar perintah ini dipost_build
bagian file buildspec.yl:printf '{"ImageURI":"
image_URI
"}' > imageDetail.jsonAnda harus menyertakan
imageDetail.json
file sebagai artefak keluaran dalambuildspec.yml
file. -
Tambahkan
imageDetail.json
sebagai file artefak dalambuildspec.yml
file.artifacts: files: - imageDetail.json
-
-