Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

636
Visualizações
Obteniendo "¿Quería ejecutar los comandos dotnet SDK? Instale dotnet SDK desde"

Estoy tratando de contener una aplicación .net MVC, pero cuando ejecuto la imagen aparece el error como el siguiente

usuario@usuario:~/sam/WebApp$ docker run -p 8000:80 sam:último

¿Quería ejecutar comandos dotnet SDK? Instale dotnet SDK desde: https://go.microsoft.com/fwlink/?LinkID=798306&clcid=0x409

usuario@usuario:~/sam/WebApp$

Y mi Dockerfile parece

 FROM microsoft/dotnet:2.1-aspnetcore-runtime AS base WORKDIR /app COPY /bin/Release/Publish /app ENTRYPOINT ["dotnet", "WebApp.dll"]

¿Dónde me estoy equivocando?

over 4 years ago · Santiago Trujillo
1 Respostas
Responde à pergunta

0

Respuesta tardía, pero problema bastante común, así que lo responderé.

Esto suele suceder si el argumento de destino de dll en su punto de entrada no existe. Hay otras posibilidades si está exportando, tarando y reimportando activos, pero probablemente eso no sea lo que estamos tratando aquí.

En su caso, la operación de copia apunta a una ubicación de archivo relativa a la raíz. Supongo que no está publicando en {system root/}bin/Release/Publish, y su dockerfile se encuentra en la raíz de su proyecto.

Para resolver esto, debe realizar operaciones de copia relativas al directorio en el que se encuentra su dockerfile y especificar las operaciones de copia utilizando una ruta relativa al directorio (./etc).

Ejemplo que funciona a partir de mis pruebas:

 FROM microsoft/dotnet:2.1-aspnetcore-runtime AS base WORKDIR /app COPY ./bin/Release/Publish /app ENTRYPOINT ["dotnet", "WebApi.dll"]

Para ver si funciona, examine el contenedor resultante iniciando con una anulación de cmd:

 docker run -it --rm sam:latest /bin/sh ... pwd #ensure workdir is app ls -la #ensure that your application is copied here

Si desea investigar más a fondo, puede usar docker run para anular su punto de entrada y experimentar con diferentes configuraciones de lanzamiento para ver el resultado. Los comandos que necesitarás son los siguientes:

 docker run -it --rm --entrypoint {dotnet executable} {image}:{tag} {non-existent dll}

Ejemplo de salida cuando se apunta a un dll inexistente a través de la anulación en un contenedor que funciona de otro modo:

 ➜ docker run -it --rm --entrypoint dotnet sam:latest weebles.dll Did you mean to run dotnet SDK commands? Please install dotnet SDK from: https://go.microsoft.com/fwlink/?LinkID=798306&clcid=0x409
over 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda