【发布时间】:2017-09-04 10:55:45
【问题描述】:
我想在 CI 测试后将 CircleCi 的工件部署到 Google Compute Engine,
但我陷入了 SSH 密钥问题。
当gcloud compute copy-files运行时,gcloud会在CircleCI的部署过程中要求生成ssh密钥,我不知道如何处理。
警告:gcloud 的 SSH 公钥文件不存在。
警告:gcloud 的 SSH 私钥文件不存在。
警告:您没有 gcloud 的 SSH 密钥。
警告:将执行 SSH keygen 以生成密钥。
生成公钥/私钥 rsa 密钥对。
输入密码(无密码为空):
我查看了文档here 和here,但都没有提到与SSH 相关的主题。那么我应该使用什么 SSH 密钥以及如何将其安全地传递给 gcloud?
[更新] 这是我在部署步骤中的命令。
- echo $GCLOUD_SERVICE_KEY | base64 --decode --ignore-garbage > ${HOME}/gcloud-service-key.json
- sudo /opt/google-cloud-sdk/bin/gcloud --quiet components update
- sudo /opt/google-cloud-sdk/bin/gcloud auth activate-service-account --key-file ${HOME}/gcloud-service-key.json
- sudo /opt/google-cloud-sdk/bin/gcloud config set project $GCLOUD_PROJECT_ID
- sudo /opt/google-cloud-sdk/bin/gcloud compute copy-files ./dist instance-1:/tmp/ --zone $GCLOUD_INSTANCE_ZONE
【问题讨论】:
标签: ssh google-cloud-platform google-compute-engine circleci