我有一个 ruby on rails 应用程序,它运行在 Google Cloud Platform 虚拟机上,该虚拟机运行在 App Engine 柔性环境中。当我使用 gcloud --project project-name preview app deploy
部署应用程序时,它看起来像在 VM 上安装了大部分软件我认为它通过读取它创建的临时 dockerfile 安装 rails 和其他软件.它从 app.yaml 文件中获取 dockerfile 的信息(我从他们的教程中获得了这个设置)。
这对我来说工作正常,但现在我需要将 ImageMagick 安装到服务器上以处理网站上的图像。通常,您可以通过从项目目录运行 sudo apt-get install imagemagick
来完成此操作。当我通过 SSH 连接到 VM 时,我找不到项目目录,所以这不起作用。
每次我对站点进行新部署时,我不知道如何让它运行 sudo apt-get install imagemagick
,以便它在新 VM 上安装软件。
你可能会说我不太擅长服务器端的事情,想知道我应该怎么做才能以正确的方式将新软件安装到 VM 上,这样它就像 ruby 和每次我进行新部署时,rails 等。
最佳答案
当您需要额外配置时,您应该使用自定义 Dockerfile。
要安装 ImageMagics,您必须在 app.yaml
中设置 runtime: custom
,根据默认文件创建一个 Dockerfile
,然后添加下一行:
RUN apt-get update && \
apt-get install imagemagick -y
关于ruby-on-rails - 如何在 GCP 柔性环境 VM 上安装新软件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39062214/