.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 镜像名