Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Contoh server build image Docker untuk CodeBuild
Contoh berikut membongkar build Docker Anda ke server build image terkelola. Anda dapat menyesuaikan sampel ini untuk menyediakan server build image Docker khusus dan terkelola dalam konfigurasi CodeBuild proyek Anda. Perhatikan bahwa instance yang disediakan aktif saat build dijalankan secara aktif untuk proyek, dan instance dihentikan saat build tidak berjalan. Instans yang disediakan disimpan hingga satu bulan sebelum didaur ulang. Untuk informasi selengkapnya, lihat Kemampuan Server CodeBuild Docker
penting
Menjalankan sampel ini dapat mengakibatkan biaya ke AWS akun Anda. Ini termasuk kemungkinan biaya untuk CodeBuild dan untuk AWS sumber daya dan tindakan yang terkait dengan Amazon S3, AWS KMS, dan CloudWatch Log. Untuk informasi selengkapnya, lihat CodeBuild harga, harga
Konfigurasikan server Docker
Gunakan prosedur berikut untuk menyediakan lingkungan komputasi khusus untuk CodeBuild proyek yang mengelola beban kerja Docker dan menyimpan lapisan gambar Docker.
Untuk mengkonfigurasi server Docker
-
Buat file seperti yang dijelaskan di Berkas bagian Struktur direktori dan topik ini, lalu unggah ke bucket input S3 atau repositori AWS CodeCommit GitHub, atau Bitbucket.
penting
Jangan mengunggah
, hanya file di dalamnya(root directory name)
.(root directory name)
Jika Anda menggunakan bucket input S3, pastikan untuk membuat file ZIP yang berisi file, lalu unggah ke bucket input. Jangan tambahkan
ke file ZIP, hanya file di dalamnya(root directory name)
.(root directory name)
-
Buat proyek build, jalankan build, dan lihat informasi build terkait:
-
Di bagian Lingkungan konsol, pilih Konfigurasi tambahan, navigasikan ke konfigurasi server Docker, lalu pilih Aktifkan server docker untuk proyek ini. Anda kemudian dapat memilih jenis komputasi server Docker dan menyediakan kredensi Registry.
-
Jika Anda menggunakan AWS CLI untuk membuat proyek build, input berformat JSON ke
create-project
perintah mungkin terlihat mirip dengan ini. (Ganti placeholder dengan nilai Anda sendiri.){ "name": "sample-docker-custom-image-project", "source": { "type": "S3", "location": "codebuild-
region-ID
-account-ID
-input-bucket/DockerServerSample
.zip" }, "artifacts": { "type": "NO_ARTIFACTS" }, "environment": { "type": "LINUX_CONTAINER", "image": "aws/codebuild/amazonlinux-x86_64-standard:5.0", "computeType": "BUILD_GENERAL1_LARGE", "dockerServer": [ { "computeType": "BUILD_GENERAL1_LARGE", "securityGroupIds": [ "security-groups-ID
" ] } ] }, "serviceRole": "arn:aws:iam::account-ID
:role/role-name
" }catatan
Grup keamanan yang dikonfigurasi untuk server Docker harus mengizinkan lalu lintas jaringan masuk dari VPC yang dikonfigurasi dalam proyek. Mereka harus memungkinkan masuknya pada port 9876.
-
-
Untuk melihat hasil build, lihat di log build untuk string
Hello, World!
. Untuk informasi selengkapnya, lihat Lihat detail build.
Struktur direktori
Sampel ini mengasumsikan struktur direktori ini.
(root directory name)
├── buildspec.yml
└── Dockerfile
Berkas
Gambar dasar dari sistem operasi yang digunakan dalam sampel ini adalah Ubuntu. Sampel menggunakan file-file ini.
buildspec.yml
(dalam
)(root directory
name)
version: 0.2 phases: build: commands: - docker buildx build . - docker run helloworld echo "Hello, World!"
Dockerfile
(dalam
)(root directory
name)
FROM public.ecr.aws/amazonlinux/amazonlinux:latest RUN echo "Hello World"