iT邦幫忙

2023 iThome 鐵人賽

DAY 30
0

前情提要:

最後來到了成果展現的部分,在完成一系列的動作以後,要來測試看看我們是否成功將服務給建置到我們的 Linux server 上,但在展現前,其實還會需要對 Docker 進行一些設定上的處理,因此今天不僅會分享成果的展現,也會將一些 Docker 上的處理和大家作說明。

Docker 設定處理:

其實在將 Docker Image 放置在 Linux server 後,還會需要進行兩件事情的處理,如以下所說,因此接下來會分別講解這兩件事情的處理流程。

  1. 開放本機端連線至 Linux server。
  2. 將 Linux server 中,目標 Docker Image 的端口開放出來。

開放本機端連線至 Linux server

  1. 使用 VirtualBox 時,在配置當中,需要把網路的介面卡換成橋接介面卡,此介面卡的功用在和主機分享同一個網路區段,因此就可以透過此種方式連接到 Linux server 當中啟動的服務。
  2. 接著要來獲取此 Linux server 的 ip 位址,首先先來應證其會在同一個網路區段上。在本機端的命令提示字元輸入 ipconfig 查找此電腦的目前的 ip 位址。因為是透過 Wifi 連網,因此要找的是下面畫起來的部分。
    https://ithelp.ithome.com.tw/upload/images/20230930/20151565j7BRXhXoVv.png
  3. 緊接著在 Linux server 上輸入 ifconfig,可以發現到其 ip 位址區段其實是一樣的。
    https://ithelp.ithome.com.tw/upload/images/20230930/20151565vEcDCXo0lZ.png
  4. 因此到時候在本機端要連線至 Linux server 啟動的服務時,就是透過,172.20.10.4,此 ip 位址進行連線。

將 Linux server 中,目標 Docker Image 的端口開放出來

  1. 在前面的步驟中,我們只是將 Docker Image 給下載下來,但若要實際的使用,就必須要將它的端口給開放出來,可以在 Linux server 輸入以下指令確認目前是否有任何容器是啟動的,若皆沒有會是以下的畫面。
docker ps

https://ithelp.ithome.com.tw/upload/images/20230930/20151565PHn9iepwdl.png
2. 此時我們會需要將其容器的端口開放,而以下的指令是在進行端口開放的動作。

# 概念
docker run -d -p <Linux server 的 ip 位址>:<Liunx server 要開放連接容器的 port>:<容器的 port> # 這裡要注意容器的 port 為何,此服務的 port 是採用 flask 預設的 port,並沒有做更改,因此此範例中容器的 port 會是 5000
# 示範
docker run -d -p 172.20.10.4:5000:5000
  1. 輸入 docker ps 即可在 Linux server 中看到以下的畫面,表示已經成功將端口開放出來。
    https://ithelp.ithome.com.tw/upload/images/20230930/20151565QeOGwT4vUT.png

成果:

在經過以上的步驟,在 Linux server 上運行 docker run kylekao/ithome 後,可以在本機端的網頁上輸入 https://172.20.10.4:5000 即可看到此服務已經成功啟動,這樣就大功告成了!
https://ithelp.ithome.com.tw/upload/images/20230930/20151565moRM7VSGEe.png

程式碼範例:

實作的程式碼,都會將其放置在以下的 GitHub 專案中,若有需要的可以透過以下連接進入。
GitHub 網站:https://github.com/musicboy0322/Flask-CICD-Tutorial


上一篇
Day29 - 實作(六)- CD 流程文件撰寫
系列文
Python Flask CICD 啟動 ! 建構屬於你的自動化流程 !30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言