我对谷歌云的世界真的很陌生,我感到非常困惑。我利用始终免费的套餐获得了一个 Google Cloud Engine VM 实例,并希望用它来对我正在开发的一些东西进行一些测试。
我以前使用 VPS 实例管理过 Linux 服务器,但在这种特定情况下,我非常困惑如何将我的任何应用程序实际自动部署到这个 GCE VM。
我的应用程序托管在 Github 上,所以我正在尝试使用 Github Actions,不幸的是,大多数可用选项都需要我创建 Docker 映像,将它们推送到 Google 的 Container Registry,然后部署它们(就像这个官方的一样)。
不幸的是,文档告诉我每个 VM 实例只能运行一个图像,这是公平的,因为我认为这是 docker 限制。
这就是问题所在,我没有足够的知识来设置 docker compose 或协调将图像推送到 Google Cloud 的容器注册表。我只是不知道如何开始学习。
仅使用 SSH 登录 VM 实例并从 Github 中提取更改,我就绝对没有办法运行更传统的 Web 服务器(Nginx 托管 API + 前端)吗?
我尝试使用该ssh
命令登录服务器上的其中一个帐户,但我认为该端口甚至没有打开以允许我这样做。
该gcloud
命令似乎不允许我为服务帐户提供一个 JSON 密钥来登录,所以我完全不知道如何实现这一点。
关于如何解决这些问题的任何建议?
关于您的 CI/CD 问题,我无法为您提供帮助。但是,您可以配置 OS Login 以使用您的服务帐户访问您的 VM:
[FILE].json 文件将下载到您运行命令的路径目录中。
gcloud auth activate-service-account --key-file=[FILE].json
将 SSH 密钥添加到用户帐户
收集服务帐号 uniqueId
您现在可以使用服务帐户 ssh 进入项目的任何实例:
请注意,我们为 uniqueId 添加了前缀
sa_
更多信息:操作系统登录