netcore项目发布部署到阿里云linux系统Alibaba Cloud Linux3的docker

前言:

免费文章请抬贵手点赞评论一下谢谢!文章本可以免费的,但是白嫖的大佬们都舍不得点赞评论一下。如果点赞评论跟阅读量不成比例,我可能很快就设置为VIP可读了。

一、系统环境:

1、Alibaba Cloud Linux3 安装了docker-ce

2、本机windows系统安装了docker desktop,支持生成镜像

3、给系统安装设置了sftp功能服务。如果不会可以跳转到下面这个链接,看我最后的一个大步骤内容(五、配置 sftp)。

Alibaba Cloud Linux 3.2104 LTS 新购服务器基础配置

二、使用Shell命令生成镜像。

1、进入你的项目根目录,然后按 Shift+鼠标右键 打开 powershell。

2、执行命令生成镜像

docker build -t zsmadmin -f ZsmAdmin.Web.Entry\Dockerfile .

注意,最后有一个点, 不能丢了,这个点表示文件生成到当前目录下。

-t zsmadmin 是给镜像指定的名称(标签)t=tag

-f ZsmAdmin.Web.Entry\Dockerfile 是指定项目目录下的dockerfile脚本文件 f=file

3、保存镜像文件为zsmadmin.tar,保存到你的shell当前目录。

docker save -o zsmadmin.tar zsmadmin

dir zsmadmin.tar

三、镜像文件部署到linux的docker

1、上传镜像文件到服务器FTP目录

2、检查docker是否正常。

使用命令检查,我看到的状态内容不止一页,如果你翻不了页或者不想看更多,按 q 键可以退出状态内容显示:

sudo systemctl status docker

3、停止并删除已存在的容器(如果有)

注意,命令后面的容器名 zsmadmin-container,也可以是容器ID,镜像操作也可以是ID,我觉得ID会更准确。

#查看容器列表

sudo docker ps -a

停止并删除已存在的容器(如果有)

sudo docker stop zsmadmin-container

sudo docker rm zsmadmin-container

#删除旧镜像(如果有)

sudo docker rmi 镜像ID

第一次部署没容器 :docker ps -a

4、加载镜像文件

加载Docker镜像,先要用cd命令进入镜像文件所在目录 如 /home/yy

sudo docker load -i zsmadmin.tar

如果上面的方式不行,那就强行指定tar文件路径

用 sudo 但指定完整路径

sudo docker load -i /mnt/sftp/uploads/zsmadmin.tar

验证镜像是否加载成功

sudo docker images

5、启动新容器,映射端口

zsmadmin-CT1为容器名称,

启动新容器,映射5005端口

sudo docker run -d -p 5005:5005 --name zsmadmin-CT1 zsmadmin

检查容器状态

sudo docker ps

查看容器日志

sudo docker logs zsmadmin-CT1

日志内容其实可以看出来你的应用程序是否执行成功了,比如我的就失败了,提示数据库连接失败了,那就只能修改数据库连接配置,从生成镜像重新开始了。 下面是成功的截图:

6、web浏览器验证后端部署是否成功

如果上面的都成功了,浏览器地址访问不了,有可能是web站点映射的端口没有在安全组的访问规则配置放行,这个就不重复解释了。

相关推荐
guo_wen_qiang26 分钟前
mac中docker desktop服务端开启远程访问
运维·服务器·macos·docker
Sayai2 小时前
Elasticsearch 9 安装验证实战:start-local 一键部署 + Docker 手动安装踩坑指南
大数据·elasticsearch·docker
名字还没想好☜7 小时前
Docker 容器安全加固实战:非 root、只读根文件系统、drop capabilities 与最小攻击面
运维·安全·docker·容器·kubernetes
琥珀色糖8 小时前
Linux守护进程
linux·终端·守护进程·会话·进程组
码--到成功8 小时前
Docker、Kubernetes安装系列 二
docker·容器·kubernetes
二进制漫游记9 小时前
FastAPI项目集成 Qdrant向量数据库+阿里云Embedding完整实战(工具封装+业务调用)
数据库·python·阿里云·embedding
M--Y10 小时前
Docker镜像与仓库管理详解
docker·容器
starzy199010 小时前
虚拟化解决方案全景:软件虚拟化、硬件虚拟化与 Docker 的位置
运维·docker·容器
开心大爆炸11 小时前
xrdp 连接 登录对话框输入密码后闪退
linux·运维·服务器
oushaojun212 小时前
大厂 C++ 面试:深度剖析 Linux Signal 信号机制(转)
linux