AspNetCore3.1 在CentOS 用docker发布 踩坑辛酸史

AspNetCore3.1 在CentOS 用docker发布 踩坑辛酸史

  • 发布场景:windows上虚拟机 CentOS(7.8)环境

创建AspNetCore3.1 项目,加入Docker支持

首先右击项目,点击添加,在点击Docker支持(截图不便,请谅解)
AspNetCore3.1 在CentOS 用docker发布 踩坑辛酸史

生成Docker文件,如下:
AspNetCore3.1 在CentOS 用docker发布 踩坑辛酸史
修改默认Docker文件
AspNetCore3.1 在CentOS 用docker发布 踩坑辛酸史

  • CenOS安装Docker

请参考这个教程https://blog.csdn.net/nklinsirui/article/details/80610058或者其他有很多可以百度到

安装完毕后,请添加阿里加速器
1.注册阿里云 www.aliyun.com
2.搜索镜像仓库
3.点击镜像加速器,获得免费加速
AspNetCore3.1 在CentOS 用docker发布 踩坑辛酸史

  • 在CentOS上创建文件夹,并用工具将Publish文件发布到CentOS上,请参考:

https://jingyan.baidu.com/article/d169e18658995a436611d8ee.html
1.安装aspnetcore3.1SDK 运行环境
2.添加端口,入下图
AspNetCore3.1 在CentOS 用docker发布 踩坑辛酸史
先用 dotnet xxx.dll,命令测试下
AspNetCore3.1 在CentOS 用docker发布 踩坑辛酸史

Ps:这里若访问不了,请开启CentOS系统端口,命令如下:

firewall-cmd --zone=public --add-port=5672/tcp --permanent # 开放5672端口
firewall-cmd --zone=public --remove-port=5672/tcp --permanent #关闭5672端口
firewall-cmd --reload # 配置立即生效

  • 构建本地镜像

docker build -t demo1 .(空格然后点)
AspNetCore3.1 在CentOS 用docker发布 踩坑辛酸史

  • 创建容器
  1. 创建容器

容器是镜像的实例,创建demo1镜像的容器

docker run -d --name my.demo1-p 7001:7001 -v /xx/xx demo1
-d 后台运行容器
–name 容器名
-p 7001:7001冒号前面的7001表示对象访问的端口,冒号后面的7001表示容器内部端口。
(这里设置尽量用一个端口,这样开启一个端口就好了)

-v 为容器设置卷路径,可随意指定卷路径,这里是在/xxx/xxx目录下
最后面的demo1表示镜像名

  • 查看Docker运行

docker ps -a

AspNetCore3.1 在CentOS 用docker发布 踩坑辛酸史

参考博文

https://www.cnblogs.com/cornerhzd/p/13365153.html
https://www.cnblogs.com/yyee/p/12950422.html
因为是第一次部署,参考很多不一 一 列出,感谢没有列出的博主们