如何使用Go运行时将exe文件复制到App Engine(flex)?

时间:2019-02-05 10:42:18

标签: google-app-engine go dockerfile app-engine-flexible

我的Go应用程序需要使用一个独立的可执行文件,我想在部署到GAE flex环境期间将其与“ gcloud app deploy”命令一起复制。

  1. 在部署过程中,我尝试将exe保留在其他go文件所在的文件夹中,但这似乎并没有使exe进入GAE flex
  2. 我尝试在Dockerfile中使用这两行,并更改了app.yaml中的“运行时:自定义”,但这都没有解决,因为我似乎还缺少其他东西。
FROM gcr.io/google-appengine/golang 
ADD test.exe /usr/local/bin/

在没有/没有Dockerfile的情况下,谁能建议我如何复制test.exe并在GAE flex环境上构建go应用程序?

编辑: 我知道我应该在GAE机器上安装该软件包(Debian软件包),并使其可用于App Engine应用。

是否有任何有关如何准备Dockerfile的指针,以便Debian软件包及其所有依赖项都可以安装,并且我正部署到App Engine的应用程序也可以访问它?

1 个答案:

答案 0 :(得分:0)

您可以使用命令COPY复制文件。

但是,它不起作用,因为运行GAE flex实例的VM使用Linux,如StackOverflow所示。

我也找到了这个related thread,这可能对您有所帮助。

编辑

部署Windows应用程序所需的其他选项是使用Windows创建VM实例并在其中部署应用程序,该应用程序需要Windows可执行文件。还是可以为Linux的独立可执行文件找到替代方法?