.NET Core 打包镜像,并部署镜像,更新镜像需要用的命令

执行环境为powershell终端,#号后为备注内容,{}括起内容为变量,视具体内容而定

打包

# 进入项目根目录
cd {D:/Project/testproject}

#build镜像,testproject为镜像名称,pro为镜像tag		
docker build -t {testproject}:{pro} -f ./testproject/Dockerfile 

#查看打包好的镜像,testproject为上一步骤的镜像名称,找到指定tag的记录,复制ImageId	
docker images {testproject}	

#登录到远程仓库,已登录过可以不用重复执行	
docker login -u {repo}		

#a7f62992b4ef 为上一步骤中指定tag的ImageId,将本地镜像名和标签重命名为远程镜像
docker tag {a7f62992b4ef} {{repo}}/xx-aliyun/{testproject:v1.0}	

#推送上一步重命名后的镜像到远程仓库	
docker push {{repo}}/xx-aliyun/{testproject:v1.0}		

部署(更新镜像直接删除容器,所以要做挂载卷持久化)

#查找镜像id
docker ps | grep "testproject"| awk '{print $1}'

# 根据上一步镜像id停止运行
docker stop a7f62992b4ef

# 删除现有镜像 简化:docker rm $(docker ps -a| grep "site-testproject" | awk '{print $1}')
docker rm a7f62992b4ef

# 登录远程私有镜像仓库(阿里云为例)
docker login --username=xx - xx

# 远程仓库拉取更新的tag
 docker pull {image-name}:{ tag-name}

 # 创建挂载卷
docker volume create website-log
docker run --name site-testproject -p 8081:80--mount source = website - log, target =/ var / lib / websitelog / shortvideoapi - d {image-name}:{ tag - name}

端口启动

1、开启防火墙
  systemctl start firewalld

2、开放指定端口
      firewall-cmd --zone=public --add - port = 5433 / tcp--permanent
     命令含义:
--zone #作用域
--add-port=5433/tcp  #添加端口,格式为:端口/通讯协议
--permanent  #永久生效,没有此参数重启后失效

3、重启防火墙
firewall-cmd --reload

4、查看端口号
netstat -ntlp   //查看当前所有tcp端口·

netstat -ntulp |grep 5433   //查看所有5433 端口使用情况·
posted @ 2022-02-25 19:13  Mzhangyl  阅读(425)  评论(0编辑  收藏  举报