目標:取得SSH KEY
Step1 : SSH 連線至 life-number vm
Step2 : 先去了 life-number vm 產生 ssh key
Step3: ssh-keyhun
取得公有key和私有key
Your identification has been saved in /home/ciaochocho/.ssh/id_rsa
Your public key has been saved in /home/ciaochocho/.ssh/id_rsa.pub
目標:取得SSH KEY之後 將VM設置公鑰
Step1 : 確定 life-number vm 有權限輸入以下,這個指令是要設置VM的KEY,給外部資源訪問這台部署的機器。
gcloud compute instances add-metadata life-number --metadata-from-file ssh-keys=.ssh/id_rsa.pub
gcloud compute instances add-metadata ${your-vm-name} --metadata-from-file ssh-keys=${your-public-key}
Step2: 直接打沒有權限的話,可參照以下設置。
- life-number VM 需要設定 API和身份管理
- Cloud API 访问权限范围:授予对所有 Cloud API 的完整访问权限
Step3: 此時應該要可以打,成功的話會出現以下。
Format ssh keys following https://cloud.google.com/compute/docs/instances/adding-removing-ssh-keys
Updated [https://www.googleapis.com/compute/v1/projects/chrome-frame-380908/zones/asia-east1-b/instances/life-number].這台VM就會有允許別人從外部連入的SSH Key(public Key)
目標:將SSH私鑰 設置於Gitlab CI/CD Variables
接著,要去Gitlab Group設置CI/CD的參數,把參數新增在頁面,再從gitlab-ci.yml取出值。
Step1: 取的私有KEY,於VM打 cat .ssh/id_rsa.pub
。注意!需要連同---
頭尾等全部內容一起複製才算是完整的。
Step2: 點選 Add Variable 新增,自己命名變數和貼上私有KEY。(如下圖)
設置 Gitlab Variables 後即可在 gitlab-ci.yml 使用