1

我正在尝试部署一个节点应用程序,该应用程序位于 GitHub 的存储库中,并由 Google App Engine 镜像。

我采取的步骤:

  1. 在我的本地机器上创建应用程序

  2. 在 Github 上发布存储库

  3. 在 Google 控制台中,我告诉 App Engine 镜像这个存储库,它可以工作:如果我去开发,存储库会显示:

在此处输入图像描述

  1. 然后我打开谷歌提供的远程shell,并尝试运行gcloud app deploy,它给出了一个错误,然后我注意到文件不在目录中。于是我通过shell浏览了这台机器的所有文件夹,都找不到。

问题:我在这里缺少什么?谷歌镜像我的回购并不意味着它保存在实例上的某个地方吗?我是否也需要将其克隆到那里?

4

1 回答 1

4

我使用此答案所指向的解决方案作为参考:https ://stackoverflow.com/a/40693455/4495081 。

在 web-cached 文章中,所有操作都在 cloud shell中完成,基本上本地 repo 存在于您的 cloud shell “homedir”中。从那里它被保存/上传到云源存储库:

将您的源代码保存在 Cloud Source Repositories 中

  1. 切换到带有打开的 shell 窗格的选项卡并转到您的应用程序目录:

    cd helloworldapp
    
  2. 初始化 git 和你的仓库。如果您之前已经完成了前两个步骤,则不需要:

    git config --global user.email "you@example.com" 
    git config --global user.name "Your Name" 
    git init 
    git add . -A
    git commit -m "Initial commit"
    
  3. 授权 Git 访问 GCP:

    git config credential.helper gcloud.sh
    
  4. 将存储库作为名为“google”的远程存储库添加到本地 Git 存储库,首先将 [PROJECT_ID] 替换为您的 Cloud 项目的名称:

    git remote add google /web/20161119132814/https://source.developers.google.com/p/[PROJECT_ID]/r/default
    
    git push google master
    

在您的情况下,您朝另一个方向发展:您创建了云源存储库并使用开发人员控制台将其链接到您的 github 存储库,但您的 cloud shell homedir 中不存在存储库。

您需要做的就是将您的云源存储库克隆到您的 cloud shell homedir 中,我认为这可以在 cloud shell中完成,按照源代码Clone your Cloud Repository to a local Git repository页面部分中指示的自定义步骤,然后从那里进行部署。这些方面的东西:

gcloud init
gcloud source repos clone repo_name --project=proj_name
cd repo_name
gcloud app deploy ...
于 2017-02-08T20:49:25.463 回答