Exemplo de compilações do Docker no Windows para o CodeBuild - AWS CodeBuild

Exemplo de compilações do Docker no Windows para o CodeBuild

O exemplo a seguir compila e executa uma imagem do Docker do Windows usando o CodeBuild.

Executar exemplo de compilações do Docker no Windows

Use o procedimento a seguir para executar compilações do Docker no Windows.

Como executar exemplo de compilações do Docker no Windows
  1. Crie os arquivos conforme descrito nas seções Estrutura de diretório e Arquivos deste tópico e faça upload deles em um bucket de entrada do S3 ou em um repositório do AWS CodeCommit, do GitHub ou do Bitbucket.

    Importante

    Não faça upload de (root directory name), apenas dos arquivos dentro de (root directory name).

    Se você estiver usando um bucket de entrada do S3, crie um arquivo ZIP que contenha os arquivos e envie-o para o bucket de entrada. Não adicione (root directory name) ao arquivo ZIP, apenas aos arquivos dentro de (root directory name).

  2. Crie uma frota do WINDOWS_EC2.

    Se você usar a AWS CLI para criar a frota, a entrada em formato JSON do comando create-fleet pode ser semelhante a esta. (Substitua os espaços reservados com seus próprios valores.)

    { "name": "fleet-name", "baseCapacity": 1, "environmentType": "WINDOWS_EC2", "computeType": "BUILD_GENERAL1_MEDIUM" }
  3. Crie um projeto de compilação, execute a compilação e exiba as respectivas informações.

    Se você usar a AWS CLI para criar o projeto de compilação, a entrada em formato JSON para o comando create-project pode ser semelhante a esta. (Substitua os espaços reservados com seus próprios valores.)

    { "name": "project-name", "source": { "type": "S3", "location": "bucket-name/DockerImageSample.zip" }, "artifacts": { "type": "NO_ARTIFACTS" }, "environment": { "type": "WINDOWS_EC2", "image": "Windows", "computeType": "BUILD_GENERAL1_MEDIUM", "fleet": { "fleetArn": "fleet-arn" } }, "serviceRole": "arn:aws:iam::account-ID:role/role-name" }
  4. Para ver os resultados da compilação, procure no log da compilação a string Hello, World!. Para obter mais informações, consulte Visualizar detalhes de compilação.

Estrutura de diretório

Essa amostra pressupõe esta estrutura de diretório.

(root directory name) ├── buildspec.yml └── Dockerfile

Arquivos

A imagem de base do sistema operacional usada nesse exemplo é mcr.microsoft.com/windows/servercore:ltsc2022. A amostra usa estes arquivos.

buildspec.yml (em (root directory name))

version: 0.2 phases: pre_build: commands: - docker build -t helloworld . build: commands: - docker images - docker run helloworld powershell -Command "Write-Host 'Hello World!'"

Dockerfile (em (root directory name))

FROM mcr.microsoft.com/windows/servercore:ltsc2022 RUN powershell -Command "Write-Host 'Hello World'"