Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Docker dalam sampel gambar khusus untuk CodeBuild
Contoh berikut membangun dan menjalankan image Docker dengan menggunakan AWS CodeBuild dan image build Docker kustom (docker:dind
di Docker Hub).
Untuk mempelajari cara membuat image Docker dengan menggunakan image build yang disediakan oleh CodeBuild dengan dukungan Docker, lihat. Contoh 'Publikasikan gambar Docker ke ECR Amazon'
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
Jalankan Docker dalam sampel gambar khusus
Gunakan prosedur berikut untuk menjalankan Docker dalam sampel gambar khusus. Untuk informasi lebih lanjut tentang sampel ini, lihatDocker dalam sampel gambar khusus untuk CodeBuild.
Untuk menjalankan Docker dalam sampel gambar khusus
-
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 ZIP file yang berisi file, lalu unggah ke bucket input. Jangan tambahkan
ke ZIP file, hanya file di dalamnya(root directory name)
.(root directory name)
-
Buat proyek build, jalankan build, dan lihat informasi build terkait.
Jika Anda menggunakan AWS CLI untuk membuat proyek build, input JSON -format 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/DockerCustomImageSample
.zip" }, "artifacts": { "type": "NO_ARTIFACTS" }, "environment": { "type": "LINUX_CONTAINER", "image": "docker:dind", "computeType": "BUILD_GENERAL1_SMALL", "privilegedMode": false }, "serviceRole": "arn:aws:iam::account-ID
:role/role-name
", "encryptionKey": "arn:aws:kms:region-ID
:account-ID
:key/key-ID
" }catatan
Secara default, daemon Docker diaktifkan untuk non-build. VPC Jika Anda ingin menggunakan kontainer Docker untuk VPC build, lihat Runtime Privilege dan Kemampuan Linux
di situs web Docker Docs dan aktifkan mode istimewa. Juga, Windows tidak mendukung mode istimewa. -
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: pre_build: commands: - docker build -t helloworld . build: commands: - docker images - docker run helloworld echo "Hello, World!"
Dockerfile
(dalam
)(root directory
name)
FROM maven:3.3.9-jdk-8 RUN echo "Hello World"