iT邦幫忙

2023 iThome 鐵人賽

DAY 29
0

前情提要:

終於進入到最後的 CD 部屬環節,由於我們自身所架設的 Linux server 並沒有對外開放,因此在 GitHub Actions 上是無法進行自動化部屬,但我們還是會分享若有開放則其 CD 文件要如何撰寫,並且分享若要手動部屬,目前我的作法為何。

手動部屬:

目前我針對部屬的邏輯是將在 DockerHub 上的 Docker Image 給抓到 Linux server 當中,並且當需要此服務時,就在 Linux server 中執行以下的指令,而以下的 CD 部署文件只是依照此邏輯給實踐出來,只是因為 Linux server 只架設在本地並沒有對外開放,因此 GitHub Actions 是無法透過 SSH 連線至自己架設的 server 上。

docker pull kylekao/ithome

CD 部屬:

name: SSH connect deploy CD
on:
  push:
    branches: [ "master" ]
jobs:
  build:
    runs-on: ubuntu-latest
    steps:
    - name: executing remote ssh commands using password
      uses: garygrossgarten/github-action-ssh@release
      with:
        command: docker pull kylekao/ithome
        host: ${{secrets.SERVER_HOST}}
        username : ${{secrets.USERNAME}}
        password : ${{secrets.PASSWORD}}
  1. 這裡一樣使用到 GitHub Actions 所提供的敏感資料隱藏,將那些會涉及到安全的資料透過 secrets.變數 給替換掉。

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

尚未有邦友留言

立即登入留言