1. 程式人生 > 其它 >.NET Core 打包映象,並部署映象,更新映象需要用的命令

.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埠使用情況·