Docker dalam sampel gambar khusus untuk CodeBuild - AWS CodeBuild

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:dinddi 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 Amazon S3, AWS Key Management Service harga, dan harga Amazon CloudWatch.

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
  1. 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(root directory name), hanya file di dalamnya(root directory name).

    Jika Anda menggunakan bucket input S3, pastikan untuk membuat ZIP file yang berisi file, lalu unggah ke bucket input. Jangan tambahkan (root directory name) ke ZIP file, hanya file di dalamnya(root directory name).

  2. 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.

  3. Untuk melihat hasil build, lihat di log build untuk stringHello, 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"