Hola amigos de la #nerdytud En el día de hoy quiero compartirles una solución completa (y sencilla) para crear una imágen en docker de una webapi realizada en NET 5
Crear aplicación
mkdir backend && cd backend
dotnet new sln
Crear proyecto
mkdir api && cd api
dotnet new webapi
Linkear proyecto a la solución
cd ..
dotnet sln backend.sln add ./api/api.csproj
Ejecutar aplicación
dotnet run
https://localhost:5001/swagger
Crear archivo Dockerfile
FROM mcr.microsoft.com/dotnet/sdk:5.0 AS build
EXPOSE 80
EXPOSE 443
WORKDIR /src
COPY *.sln .
COPY /api/*.csproj ./api/
RUN dotnet restore
COPY api/. ./api/
WORKDIR /src/api
RUN dotnet publish -c release -o /bin
FROM mcr.microsoft.com/dotnet/aspnet:5.0
WORKDIR /bin
COPY --from=build /bin ./
ENTRYPOINT ["dotnet", "api.dll"]
Crear imágen
docker build -t backend:dev .
Revisar imágen
docker images
Ejecutar
docker run --rm -it -d -p 5000:80 backend:dev