As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Implantando aplicativos ASP.NET Web Forms em AWS
Gerenciando NuGet pacotes
NuGet é um repositório que contém e gerencia pacotes de código para.NET. Um aplicativo pode ter dois tipos de NuGet pacotes instalados: pacotes publicamente disponíveis no nuget.org
Para resolver esse problema, você pode provisionar um repositório gerenciado de artefact (NuGet) para baixar pacotes de fontes externas, como nuget.org. Você pode usar AWS CodeArtifact, que é um serviço de repositório de artefatos totalmente gerenciado, como um repositório de NuGet pacotes. Para obter mais informações, consulte a postagem do AWS blog Usando NuGet com AWS CodeArtifact
Para configurar seu aplicativo para usar o repositório de NuGet pacotes, crie um NuGet.config arquivo no diretório raiz do projeto ou na raiz da solução. Esse arquivo especifica as fontes de pacotes que NuGet devem ser usadas ao restaurar pacotes. O exemplo a seguir mostra como configurar o NuGet.config arquivo a ser usado CodeArtifact:
<?xml version="1.0" encoding="utf-8"?> <configuration> <packageRestore> <!-- Allow NuGet to download missing packages --> <add key="enabled" value="True" /> <!-- Automatically check for missing packages during build in Visual Studio --> <add key="automatic" value="True" /> </packageRestore> <packageSources> <add key="MyRepo" value="https://my_domain-111122223333.d.codeartifact.us-west-2.amazonaws.com/nuget/my_repo/v3/index.json" /> </packageSources> </configuration>
Neste exemplo, https://my_domain-111122223333.d.codeartifact.us-west-2.amazonaws.com/nuget/my_repo/v3/index.json substitua pela URL real do seu CodeArtifact repositório. Você pode encontrar esse URL no CodeArtifact consoleaws codeartifact get-repository-endpoint comando.
Importante
-
A configuração do
NuGet.configarquivo afeta todos os projetos dentro da mesma estrutura de diretórios. Se você quiser usar fontes de pacotes diferentes para projetos diferentes, crieNuGet.configarquivos separados para cada projeto ou solução. -
Certifique-se de que as instâncias que criam o aplicativo tenham as permissões e o acesso à rede necessários para se conectar ao repositório de NuGet pacotes (como CodeArtifact). Para obter mais informações sobre como obter credenciais, consulte Usar CodeArtifact com a CLI do nuget ou dotnet na documentação. CodeArtifact
Criando um aplicativo
Ao migrar aplicativos herdados do ASP.NET Web Forms para AWS, você continua usando o Microsoft Build Engine (MSBuild) como a ferramenta central para criar os aplicativos. MSBuild normalmente é fornecido com o Visual Studio, mas você pode baixar e usar o MSBuild executável autônomo da Microsoft sem instalar o Visual Studio. Essa abordagem é particularmente útil quando você cria seu aplicativo Web Forms em AWS, onde você pode usar instâncias do Windows ou contêineres do Docker MSBuild instalados.
Há duas etapas principais necessárias para criar um aplicativo ASP.NET Web Forms: restaurar NuGet os pacotes e criar o aplicativo. As especificidades de como essas etapas são executadas podem variar dependendo da ferramenta de CI/CD que você escolher usar. Por exemplo, se você usa AWS CodeBuild, o processo de construção é executado dentro de um contêiner Docker.
Restaure NuGet pacotes
Antes de criar seu aplicativo, você deve restaurar os NuGet pacotes exigidos pelo projeto. Você pode fazer isso usando um MSBuild ou os NuGet comandos da Interface de Linha de Comando (CLI), executados no diretório raiz do projeto.
Usando MSBuild:
msbuild -t:restore
Usando a NuGet CLI:
nuget restore
Crie usando MSBuild
Depois de restaurar os NuGet pacotes, você pode continuar com o comando de compilação principal que produz os artefatos de implantação. O comando normalmente especifica o arquivo do projeto, a configuração de compilação (por exemplo,Release) e o diretório de saída dos artefatos criados.
msbuild <ProjectName>.csproj /p:Configuration=Release /p:OutDir=<OutDir>
Para obter mais informações sobre MSBuild as opções, consulte a referência MSBuild da linha de comando
Para obter mais informações sobre como criar um aplicativo ASP.NET com AWS CodeBuild, consulte a postagem do AWS blog Criando pipelines de CI/CD para
Implantação de uma aplicação
Depois de criar seu aplicativo Web Forms, você implanta os artefatos no ambiente de destino em AWS. Na maioria dos cenários, você pode compactar e carregar os artefatos criados em um bucket do Amazon Simple Storage Service (Amazon S3) para facilitar a distribuição e a implantação. Para obter instruções, consulte a documentação do Amazon S3.
Há duas opções principais para implantar os artefatos em uma EC2 instância da Amazon: manual e automatizada.
Implantação manual
Essa opção envolve o uso dos dados do usuário da EC2 instância para incluir scripts que executarão as seguintes tarefas:
-
Instalar os Serviços de Informações da Internet (IIS)
-
Extraia e desempacote os artefatos de construção do bucket Amazon S3
-
Criar e configurar o aplicativo IIS
Embora essa abordagem ofereça flexibilidade, ela requer intervenção manual e pode ser difícil gerenciá-la à medida que seu aplicativo é dimensionado ou passa por atualizações frequentes.
Implantação automatizada
A abordagem recomendada é usar AWS CodeDeploy
Para obter mais informações e exemplos sobre como configurar pipelines de CI/CD para aplicativos ASP.NET Web Forms usando CodePipeline,, e CodeBuild CodeDeploy, consulte a postagem do AWS blog Criando pipelines de CI/CD
Usando Serviços da AWS tais como CodeBuild,, e CodeDeploy CodePipeline, você pode simplificar os processos de criação e implantação de seus aplicativos ASP.NET Web Forms migrados e garantir implantações consistentes e confiáveis na infraestrutura. AWS
Para obter informações adicionais sobre implantações automatizadas, consulte a postagem do AWS blog Gerando pipelines de CI/CD para aplicativos ASP.NET em contêineres usando AWS App2Container e as informações sobre a criação de um pipeline de CI/CD