A Contoso é uma empresa que vende produtos para várias atividades ao ar livre. O departamento de marketing da Contoso gostaria de lançar um site de micro mídia social para promover seus produtos para clientes existentes e potenciais.
Eles agora têm tanto uma aplicação backend baseada em Java quanto uma aplicação frontend baseada em .NET. Eles querem containerizá-las para que possam ser implantadas em qualquer plataforma.
Agora, como engenheiro DevOps, você deve containerizar ambas as aplicações.
Consulte a documentação README para preparação.
- Verificar o Modo Agente do GitHub Copilot
- Preparar Instruções Customizadas
- Containerizar Aplicação Java
- Containerizar Aplicação .NET
- Orquestrar Contêineres
-
Clique no ícone do GitHub Copilot no topo do GitHub Codespace ou VS Code e abra a janela do GitHub Copilot.
-
Se você for solicitado a fazer login ou se inscrever, faça-o. É gratuito.
-
Certifique-se de que você está usando o Modo Agente do GitHub Copilot.
-
Selecione o modelo para
GPT-4.1ouClaude Sonnet 4. -
Certifique-se de que você configurou os Servidores MCP.
-
Defina a variável de ambiente
$REPOSITORY_ROOT.# bash/zsh REPOSITORY_ROOT=$(git rev-parse --show-toplevel)
# PowerShell $REPOSITORY_ROOT = git rev-parse --show-toplevel
-
Copie as instruções customizadas.
# bash/zsh cp -r $REPOSITORY_ROOT/docs/custom-instructions/containerization/. \ $REPOSITORY_ROOT/.github/
# PowerShell Copy-Item -Path $REPOSITORY_ROOT/docs/custom-instructions/containerization/* ` -Destination $REPOSITORY_ROOT/.github/ -Recurse -Force
-
Certifique-se de que você está usando o Modo Agente do GitHub Copilot com o modelo
Claude Sonnet 4ouGPT-4.1. -
Use um prompt como o abaixo para construir uma imagem de contêiner para a aplicação Java.
Gostaria de construir uma imagem de contêiner de uma aplicação Java. Siga as instruções abaixo. - Identifique todos os passos primeiro, que você vai fazer. - A aplicação Java está localizada em `java/socialapp`. - Seu diretório de trabalho é a raiz do repositório. - Crie um Dockerfile, `Dockerfile.java`. - Use Microsoft OpenJDK 21. - Use abordagem de construção multi-estágio. - Extraia JRE do JDK. - Use o número da porta de destino `8080` para a imagem do contêiner. - Adicione ambas as variáveis de ambiente, `CODESPACE_NAME` e `GITHUB_CODESPACES_PORT_FORWARDING_DOMAIN` do host para a imagem do contêiner. - Crie um arquivo de banco de dados SQLite, `sns_api.db`, na imagem do contêiner. NÃO copie o arquivo do host. -
Uma vez que
Dockerfile.javaseja criado, construa a imagem do contêiner com o seguinte prompt.Use `Dockerfile.java` e construa uma imagem de contêiner. - Use `contoso-backend` como nome da imagem do contêiner. - Use `latest` como tag da imagem do contêiner. - Verifique se a imagem do contêiner foi construída adequadamente. - Se a construção falhar, analise os problemas e corrija-os. -
Uma vez que a construção seja bem-sucedida, execute a imagem do contêiner com o seguinte prompt.
Use a imagem do contêiner recém-construída, execute um contêiner e verifique se a aplicação está funcionando adequadamente. - Use a porta do host `8080`. - Ambos os valores `CODESPACE_NAME` e `GITHUB_CODESPACES_PORT_FORWARDING_DOMAIN` devem ser aqueles do GitHub Codespaces.
-
Certifique-se de que você está usando o Modo Agente do GitHub Copilot com o modelo
Claude Sonnet 4ouGPT-4.1. -
Use um prompt como o abaixo para construir uma imagem de contêiner para a aplicação .NET.
Gostaria de construir uma imagem de contêiner de uma aplicação .NET. Siga as instruções abaixo. - Identifique todos os passos primeiro, que você vai fazer. - A aplicação .NET está localizada em `dotnet`. - Seu diretório de trabalho é a raiz do repositório. - Crie um Dockerfile, `Dockerfile.dotnet`. - Use .NET 9. - Use abordagem de construção multi-estágio. - Use o número da porta de destino `8080` para a imagem do contêiner. - Adicione a variável de ambiente, `ApiSettings__BaseUrl` ao contêiner. Deve apontar para a aplicação Java, `http://localhost:8080/api`. -
Uma vez que
Dockerfile.dotnetseja criado, construa a imagem do contêiner com o seguinte prompt.Use `Dockerfile.dotnet` e construa uma imagem de contêiner. - Use `contoso-frontend` como nome da imagem do contêiner. - Use `latest` como tag da imagem do contêiner. - Verifique se a imagem do contêiner foi construída adequadamente. - Se a construção falhar, analise os problemas e corrija-os. -
Uma vez que a construção seja bem-sucedida, execute a imagem do contêiner com o seguinte prompt.
Use a imagem do contêiner recém-construída, execute um contêiner e verifique se a aplicação está funcionando adequadamente. - Use a porta do host `3030`. - Passe a variável de ambiente `ApiSettings__BaseUrl` o valor de `http://localhost:8080/api`. -
Certifique-se de que ambas as aplicações frontend e backend NÃO estão se comunicando uma com a outra porque elas ainda não se conhecem. Execute o prompt como abaixo.
Remova ambos os contêineres Java e .NET e suas respectivas imagens de contêiner.
-
Certifique-se de que você está usando o Modo Agente do GitHub Copilot com o modelo
Claude Sonnet 4ouGPT-4.1. -
Use um prompt como o abaixo para construir um arquivo Docker Compose.
Gostaria de criar um arquivo Docker Compose. Siga as instruções abaixo. - Identifique todos os passos primeiro, que você vai fazer. - Seu diretório de trabalho é a raiz do repositório. - Use `Dockerfile.java` como aplicação backend. - Use `Dockerfile.dotnet` como aplicação frontend. - Crie `compose.yaml` como arquivo Docker Compose. - Use `contoso` como nome da rede. - Use `contoso-backend` como nome do contêiner da aplicação Java. Sua porta de destino é 8080, e porta do host é 8080. - Use `contoso-frontend` como nome do contêiner da aplicação .NET. Sua porta de destino é 8080, e porta do host é 3030. - Adicione ambas as variáveis de ambiente, `CODESPACE_NAME` e `GITHUB_CODESPACES_PORT_FORWARDING_DOMAIN` do host para o contêiner Java. - Adicione a variável de ambiente, `ApiSettings__BaseUrl` ao contêiner .NET. Deve apontar para o `/api` da aplicação Java. -
Uma vez que o arquivo
compose.yamlseja criado, execute-o e verifique se ambas as aplicações estão funcionando adequadamente.Execute o arquivo Docker compose e verifique se todas as aplicações estão funcionando adequadamente. -
Abra um navegador web e navegue para
http://localhost:3030, e verifique se as aplicações estão funcionando adequadamente.
Parabéns! 🎉 Você completou todas as sessões do workshop com sucesso!
Aviso: Este documento foi localizado pelo GitHub Copilot. Portanto, pode conter erros. Se você encontrar alguma tradução inadequada ou incorreta, por favor crie um issue.

