使用 Github Action 將 Docker 化的專案進行打包、上傳並佈署
使用 Github Action 將 Docker 化的專案進行打包、上傳並佈署
前言
專案 Docker 化後,開始將專案自動佈署化,因此找到的 Github Action 替我們輸出、打包並上傳至伺服器。
準備
註冊 Docker hub
網址:https://hub.docker.com/
註冊 GitHub
網址:https://github.com/
一個 Docker 化的專案
本篇範例:https://github.com/Hi-Alan-Liu/docker-vue
準備完畢後在進行下一步
開始
一、建立 Github Action
從 Github 專案頁面點選 Actions
並選擇 Docker images

撰寫待會需要執行的 yml 檔案
1 | |
此篇範例是使用 docker/login-action@v1 進行登入
接著執行 docker/build-push-action@v2
將專案打包並更新至 DockerHub
最後使用 ssh 連上雲端主機
進行 Docker pull 及 run 等等指令

儲存 Commit 後, Action 會開始自動執行
目前一定會顯示執行失敗

原因是因為我們沒有將 secrets 相關的 Key Value 設定上去
二、設定 Github secrets
從 Github 專案頁面點選 Settings
接著點 Secrets and variables > Actions

接下來點選 New repository secret
將 Action 會使用到的參數全部填入

本篇範例會使用到
DOCKER_HUB_USERNAME: DockerHub Username
DOCKER_HUB_ACCESS_TOKEN: DockerHub Token
DOCKER_HUB_PROJECT: DockerHub 專案名稱
DEPLOY_SSH_IP: 雲端主機的公開IP位置
DEPLOY_SSH_KEY: 雲端主機的 Private Key
DEPLOY_SSH_USER: 雲端主機的使用者名稱

DOCKER_HUB_ACCESS_TOKEN 可以從 DockerHub Account > Security 裡面建立 Access Tokens
三、重新執行 Github Action
從 Github Actino 點選 Re-run jobs 就可以重新執行剛剛的失敗的 Action

之後等他執行完成基本上就成功囉 ~
今天的教學就到此
Thank you! 😄
本文作者: 我的名字叫劉穎,也可以叫我 Alan
本文連結: https://hi-alan-liu.github.io/blog/dockerhub-github-action/
版權聲明: 本站所有文章除特別聲明外,均採用 CC BY-SA 4.0 協議 。轉載請註明出處!