Docker映像无法运行

时间:2019-03-10 04:11:54

标签: docker asp.net-core dockerfile ubuntu-18.04

我们有一个在Ubuntu 18.04下运行的ASP.Net应用程序(安装了aspnetcore 2.2,仅运行时)。我们使用kestrel服务来提供应用程序,并使用nginx作为反向代理。安装在VM /云实例中后,一切运行正常。 现在,我希望对我们的应用程序进行容器化(仅测试水域)。因此,我使用以下dockerfile构建了一个映像:

FROM ubuntu:18.04
RUN apt-get update && \
apt-get -y install software-properties-common wget && \
wget -q -O /opt/packages-microsoft-prod.deb https://packages.microsoft.com/config/ubuntu/18.04/packages-microsoft-prod.deb && \
dpkg -i /opt/packages-microsoft-prod.deb  && \
add-apt-repository universe  && \
apt-get update  && \
apt-get install -y apt-transport-https aspnetcore-runtime-2.2 nginx 

COPY default /etc/nginx/sites-available/default

COPY appfolder /opt/

ENTRYPOINT ["dotnet", "/opt/appfolder/app.dll"]

EXPOSE 80:80

但是,当我尝试运行该映像时,出现以下错误:

  

您是要运行dotnet SDK命令吗?请安装dotnet SDK   来自:https://go.microsoft.com/fwlink/?LinkID=798306&clcid=0x409

任何想法可能出什么问题吗?我的假设是(是Docker世界的新手):  使用Ubuntu 18.04作为基本映像,并在顶部安装Dotnet和Nginx,然后复制nginx默认站点并运行该应用程序(使用dotnet)。显然,我缺少了一些东西。

1 个答案:

答案 0 :(得分:0)

根据Microsoft文档here

您需要运行

sudo apt-get update

之后

sudo apt-get install -y apt-transport-https

之前

sudo apt-get install aspnetcore-runtime-2.2