畢竟是雲端服務,不像自己的電腦打開就能進行開發。
把服務部署到雲端上,需要先透過SSH連線到伺服器。
以下是個人經驗中,3種連線方式進 GCP instance的方法。
GCP已經有個服務,點選右上角的ssh按鈕點選就進VM。
或是點選gcloud 指令列,會提供以下連線指令,在本地端的Terminal輸入就依據後續要求進行操作。gcloud beta compute ssh --zone "伺服器的位置" "instance名稱" --project "自訂的專案名稱-編號"
ssh-keygen -t rsa -f ~/.ssh/[KEY_FILENAME] -C [USERNAME]
ssh-keygen -t rsa -f ~/.ssh/gcpn01 -C gcpn01
會要求輸入密碼
//cat [KEY_FILENAME].pub
公私鑰都在SSH裡頭 cd ~/.ssh
複製公鑰 cat gcpn01.pub
貼到 GCE產品頁面中 -> VM 執行個體詳細資料 -> SSH金鑰項目
ssh -i path-to-private-key username@external-ip
需先到SSH資料夾內 cd ~/.ssh
連線指令 ssh -i gcpn01 gcpa01@104.19.17.13
會要求輸入建立ssh key時所設定的密碼
但每次連線都要進SSH資料夾,輸入一堆設定檔太過於複雜,所以更優的作法是用方法3
vim ~/.ssh/config
Host gcpApache01 //自訂alias
HostName 14.19.17.13 //ip
Port 22 //host SSH port
IdentitiesOnly yes //指定key
IdentityFile ~/.ssh/gcpa01 // 指定pub key 路徑
User gcpa01 //登入username,
ssh gcpApache01
一樣輸入建立ssh key時所設定的密碼,就能順利連上GCP。
參考資料
https://www.youtube.com/watch?v=2ibBF9YqveY
https://stackoverflow.com/questions/59283827/not-to-create-a-new-user-
https://cloud.google.com/compute/docs/instances/adding-removing-ssh-keys#sshkeyformat
http://www.kchuhai.com/report/view-6059.html
https://code.yidas.com/ssh-config/
https://medium.com/%E6%B5%A6%E5%B3%B6%E5%A4%AA%E9%83%8E%E7%9A%84%E6%B0%B4%E6%97%8F%E7%BC%B8/how-to-setup-ssh-config-%E4%BD%BF%E7%94%A8-ssh-%E8%A8%AD%E5%AE%9A%E6%AA%94-74ad46f99818
https://www.youtube.com/watch?v=TGSr2voyvKU
https://unix.stackexchange.com/questions/61655/multiple-similar-entries-in-ssh-config
我有試過方法二的第三點:
只有第一次需要使用ssh -i path-to-private-key username@external-ip
。接下來只要ssh username@external-ip
,就可以直接連線,連密碼都不用輸入XD
是連線到GCP上嗎?
還是你那個username帳號權限太大 ?!