.net6(.net core) 发布到Linux(CentOS)Docker

1、项目设置:

设置dockerfile属性为“始终复制”,

修改dockerfile文件内容为:

FROM mcr.microsoft.com/dotnet/aspnet:6.0 AS base 
WORKDIR /web 

COPY . .

EXPOSE 80 
EXPOSE 443

FROM base AS final

ENTRYPOINT ["dotnet", "OneZhanMVC.dll"] 

ps:若项目没有dockerfile右键项目,点击添加,选择docker支持

2、项目发布

右键项目发布(发布方法:文件系统)

 

3、项目传输

使用ftp连接服务器将发布后的文件传到linux中   传送门:https://www.cnblogs.com/linder/p/15710680.html

4、安装docker 

传送门:https://www.cnblogs.com/linder/p/15708625.html

5、安装.net6环境

docker pull mcr.microsoft.com/dotnet/aspnet:6.0

6、构建镜像

cd 项目目录                      例如:cd web/onezhanmvc             (cd到dockerfile所在目录,build命令是根据dockerfile创建镜像的)

docker build -t 镜像名 .     例如:docker build -t onezhanmvc .      (.别忘了哦)       

7、创建并运行容器

docker run -d --name my-dotnet6-demo01 -p 8001:80 --restart=always  onezhanmvc(上一步创建的镜像名)

参数说明:

-d                   #后台运行

-p 8001:80    #宿主机端口号 : docker端口号

--restart=always     #dokcer重新启动时也将容器自动启动

正常的话我们在外部访问linux的IP+端口号就能访问了!

8、容器常用命令

查看所有容器:docker ps -a

启动容器:docker start  容器名

重启容器:docker restart 容器名

停止容器:docker stop 容器名

删除容器:docker rm 容器名

删除镜像:docker rmi 镜像名

 

本文主要参考https://www.cnblogs.com/yyee/p/15676770.html

posted @ 2021-12-20 11:35  林冬  阅读(1767)  评论(0编辑  收藏  举报