一、前言
本文僅針對作業系統為 CentOS 8 的環境下部署方法進行講述。如有需要,後續將在其他文章中進行其他系統下的部署方式講解。
二、準備工作
- 確保伺服器已安裝 docker。
可以透過命令docker -v
進行檢查,如出現下圖結果則表示已安裝。
- 程式碼準備
-
在程式碼專案名稱上右鍵,依次選擇
新增 - Docker 支援...
,彈出容器基架選項
介面,如下圖:
-
在 目標 OS 選擇
Linux
, 容器生成型別 選擇Dockerfile
,點選確定
按鈕 -
此時專案中會增加一個名為
Dockerfile
的配置檔案。
內容大致如下:
-
開啟專案 目錄
Properties
下launchSettings.json
檔案
將會看到新增的如下內容:
-
需要注意的是
Dockerfile
檔案中的EXPOSE
後方的埠需要與Properties\launchSettings.json
檔案中的ASPNETCORE_HTTP_PORTS
指定端埠一致,該埠在部署到 docker 後,將作為容器埠使用。
-
三、上傳專案原始碼到伺服器
上傳程式碼到伺服器的方式有很多,下面僅列舉手動上傳和從 git 克隆程式碼。
- 手動上傳檔案
利用工具WinSCP
工具連線伺服器後,上傳檔案。 - 從 git 克隆程式碼
進入伺服器相關目錄下,利用 git 命令git clone [url]
進行程式碼克隆到伺服器。
四、開始部署
-
將
Dockerfile
檔案移動到父級目錄中。 -
開啟命令列視窗,利用
cd [路徑]
進入程式碼檔案所在目錄。 -
輸入命令
ls
檢視目錄下檔案,如下所示能看到 Dockerfile 檔案
-
建立映象
命令:docker build -t 映象名稱:版本號 .
引數:** -t 或 --tag **:用於指定映象的名稱和標籤
示例:docker build -t swaggersimple:1.0 .
等待操作完成後,可透過命令 docker images 檢視 docker 中已存在的映象
-
建立容器
命令:docker run –name=容器名稱 -p主機(宿主)埠:容器埠 -d 映象名稱:1.0
引數:--name:容器名稱;-p:指定埠對映,格式為:主機(宿主)埠:容器埠;-d:後臺執行容器,並返回容器ID
示例:docker run --name=swaggersimple -p 8080:8080 -d swaggersimple:1.0
-
檢視容器資訊
輸入命令:docker ps -a
,可檢視如下結果:
說明:狀態(STATUS) 為Up
則表示容器狀態為執行中
,Exited
表示已停止
。 -
檢查介面是否可以正常訪問
輸入命令:curl http://192.168.16.128:8080/api/Test/appinfo
檢視是否存在返回結果。
結束語
docker 容器部署已作為當前主流部署方式,歡迎大家一起交流學習。 QQ:2289480980