

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

# Windows Docker crea un esempio per CodeBuild
<a name="sample-windows-docker-custom-image"></a>

L'esempio seguente crea ed esegue un'immagine di Windows Docker utilizzando. CodeBuild

**Topics**
+ [Esempio di build di Esegui Windows Docker](#sample-windows-docker-build-running)

## Esempio di build di Esegui Windows Docker
<a name="sample-windows-docker-build-running"></a>

Utilizzare la procedura seguente per eseguire le build di Windows Docker.

**Per eseguire le build di Windows Docker, esempio**

1. Crea i file come descritto nelle [File](#sample-windows-docker-custom-image-files) sezioni [Struttura delle directory](#sample-windows-docker-custom-image-dir) e di questo argomento, quindi caricali in un bucket di input S3 o in un repository AWS CodeCommit GitHub, o Bitbucket. 
**Importante**  
Non caricare `{{(root directory name)}}`, ma solo i file all'interno di `{{(root directory name)}}`   
Se si sta utilizzando un bucket di input S3, assicurarsi di creare un file ZIP contenente i file, quindi caricarlo nel bucket di input. Non aggiungere `{{(root directory name)}}` al file ZIP, ma solo i file all'interno di `{{(root directory name)}}`

1. Crea una flotta. `WINDOWS_EC2`

   Se usi il AWS CLI per creare la flotta, l' JSON-formatted input del `create-fleet` comando potrebbe essere simile a questo. (Sostituire i segnaposto con i propri valori).

   ```
   {
     "name": "{{fleet-name}}",
     "baseCapacity": 1,
     "environmentType": "WINDOWS_EC2",
     "computeType": "BUILD_GENERAL1_MEDIUM"
   }
   ```

1. Crea un progetto di compilazione, esegui la build e visualizza le informazioni relative alla build.

   Se usi il AWS CLI per creare il progetto di compilazione, l' JSON-formatted input del `create-project` comando potrebbe essere simile a questo. (Sostituire i segnaposto con i propri valori).

   ```
   {
     "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}}"
   }
   ```

1. Per vedere i risultati della compilazione, cercare la stringa `Hello, World!` nel log di compilazione. Per ulteriori informazioni, consulta [Visualizzazione dei dettagli delle compilazioni](view-build-details.md).

### Struttura delle directory
<a name="sample-windows-docker-custom-image-dir"></a>

Questo esempio assume la seguente struttura delle directory.

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

### File
<a name="sample-windows-docker-custom-image-files"></a>

L'immagine di base del sistema operativo utilizzato in questo esempio è`mcr.microsoft.com/windows/servercore:ltsc2022`. L'esempio utilizza i seguenti file.

`buildspec.yml` (in `{{(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` (in `{{(root directory name)}}`)

```
FROM mcr.microsoft.com/windows/servercore:ltsc2022

RUN powershell -Command "Write-Host 'Hello World'"
```