ASP .NET CORE WEB 部署到Docker
一、新建asp.net core web 网站,使用docker支持,自动生成dockerfile文件
FROM mcr.microsoft.com/dotnet/sdk:6.0 AS build WORKDIR /app WORKDIR /src COPY . . RUN dotnet restore RUN dotnet publish -c Release -o publish FROM mcr.microsoft.com/dotnet/aspnet:6.0 WORKDIR /app COPY --from=build /src/publish ./ ENTRYPOINT ["dotnet", "WebApplication6.dll"]
第一条 FROM
指令是拉取一个基础镜像,这里可以使用微软提供的官方镜像。据说还有一个体积更小的。这条命令必须放在第一行。
然后是 EXPOSE
指令,这是告诉Docker
容器对外暴露的端口。
EXPOSE
指令是声明运行时容器提供服务端口,这只是一个声明,在运行时并不会因为这个声明应用就会开启这个端口的服务。
再然后是 RUN
指令,这里可以执行你想要执行的命令,比如安装某个依赖库。(我这里安装的是 libgdiplus
,是图形处理方面的。
直到 COPY
指令前都是在指定地方创建一个目录,COPY . .
是将当前所有文件复制到你创建的工作目录中。
最后就是 ENTRYPOINT
指令 就是告诉程序的入口点是哪个。这里的
WebApplication6.dll
就是你程序发布后生成的dll
文件。
二、服务器新建文件夹,保存项目,dockerfile放在所有项目外面
三、构建image镜像,最后有个点
docker build -t n1 -f Dockerfile .
查询镜像 docker images
四、启动容器运行镜像
docker run -itd -p 80:80 n1
查询容器docker ps
五、构建image并且运行
http://121.40.16.122/weatherforecast 网址输入,输入swagger出不来,需要具体地址
posted on 2022-10-05 16:34 topguntopgun 阅读(125) 评论(0) 编辑 收藏 举报