DEV Community

André N. Darcie
André N. Darcie

Posted on

Como realizar o deploy de uma aplicação ASP.NET no Heroku [PT-BR]

O Heroku é uma plataforma de hospedagem em nuvem que permite que os desenvolvedores implantem e gerenciem suas aplicações web de maneira fácil e escalável. Se você está procurando uma maneira simples de implantar sua aplicação ASP.NET no Heroku, siga estes passos:

Crie uma conta no Heroku e crie um novo aplicativo. É recomendado usar o plano Eco para testar suas ideias. Esse plano custa US $ 5 por mês, cerca de R$ 26. Você pode mudar para outro plano mais tarde, se necessário.

Para realizar o deploy da aplicação ASP.NET no Heroku, vamos utilizar o Docker e o Heroku CLI. O método escolhido para o deploy é o "Container Registry" por meio do Heroku CLI.

Acesse a página inicial do Heroku e clique no botão "New". Em seguida, selecione a opção "Create new app" e guarde o nome do aplicativo, pois vamos utilizá-lo mais adiante.

Adicione um arquivo Dockerfile na raiz do projeto ASP.NET:

FROM mcr.microsoft.com/dotnet/sdk:7.0 AS build-env
WORKDIR /app

# Copy csproj and restore as distinct layers
COPY *.csproj ./
RUN dotnet restore

# Copy everything else and build
COPY . ./
RUN dotnet publish -c Release -o out

# Build runtime image
FROM mcr.microsoft.com/dotnet/aspnet:7.0
WORKDIR /app
COPY --from=build-env /app/out .

# ENTRYPOINT ["dotnet", "aspnetapp.dll"]
CMD ASPNETCORE_URLS="http://*:$PORT" dotnet community.dll
Enter fullscreen mode Exit fullscreen mode

Este Dockerfile foi adaptado para funcionar no Heroku, a seção do ENTRYPOINT foi comentada e adicionamos uma nova linha abaixo com a variável $PORT do próprio Heroku.

Com o Heroku CLI instalado execute o comando para realizar login direto de seu terminal:
heroku login

Agora faça login nos containers:
heroku container:login

Com o Docker instalado na máquina e em execução, insira o seguinte comando no terminal (lembre-se de substituir pelo nome do seu aplicativo):
heroku container:push web --app <nomedoseuapp>

Finalmente, para realizar o deploy da aplicação, utilize o comando:
heroku container:release web --app <nomedoseuapp>

Se algo der errado, você pode verificar os logs em tempo real com o comando:
heroku logs --tail --app <nomedoseuapp>

Com esses passos, você poderá implantar sua aplicação ASP.NET no Heroku de forma fácil e escalável. Lembre-se de que, se precisar mudar de plano ou personalizar sua configuração, o Heroku oferece muitas opções e recursos para atender às suas necessidades.

Top comments (4)

Collapse
 
rodrigopenaforte profile image
Rodrigo Penaforte

Show demais 👏

Collapse
 
andredarcie profile image
André N. Darcie

Muito obrigado pelo feedback!!

Collapse
 
daniloflorenzano profile image
Danilo Maia Florenzano

Bem explicado e direto ao ponto!

Collapse
 
andredarcie profile image
André N. Darcie

Muito obrigado pelo feedback!!