3

如何在App Engine灵活应用程序中更改共享内存文件夹/dev/shm的大小?如何更改App Engine中/ dev/shm的大小灵活

默认情况下,它被设置为64M,太低而无法运行多个应用程序(例如chrome)。我没有看到任何改变它的方法。如果您有权访问docker run command,但有方法可以更改它,但在启动应用引擎灵活应用时,我们无法访问此类访问权限。

+0

您应该查询谷歌支持也为此。有关定制的文档不太可用 –

+0

因此,它不是一回事,但如果有帮助,您可以创建tmpfs卷。 https://cloud.google.com/appengine/docs/flexible/nodejs/configuring-your-app-with-app-yaml#resource-settings –

+0

@ ZachFewtrell如果您能够挂载到/ dev/shm 。我试过了,它不起作用。 –

回答

2

答:不可以。

可惜这是不可能的(没有?)有AppEngine上。不止一些人遇到了这个问题。出于某种原因,/ dev/shm的容器默认值非常小。

......但也有其他选项

如果你想运行过程中必须配置它使用TMPFS的位置的能力,那么你可以create a tmpfs,只是有一点吧。 铬不能做到这一点。

选项1

如果要部署一个容器到Google云,一个选择是使用container engine。然后,您可以安装tmpfs的音量您荚这样的:

spec: 
    volumes: 
    - name: dshm 
    emptyDir: 
     medium: Memory 
    containers: 
    - image: gcr.io/project/image 
    volumeMounts: 
     - mountPath: /dev/shm 
     name: dshm 

Kubernetes有一个相当陡峭的学习曲线,但它可以让你开盖在/ dev/shm的极限。

选项2

有一项新功能,可以让你deploy containers to compute engine,但它是目前在阿尔法,你将需要申请让您的项目列入白名单才能使用此功能。

选项3

当然,你可以通过创建使用COS (container optimized os)


更新从speedplane的评论

选择一个GCE例如在更手动方式部署容器GCE #4

如果目标是在应用引擎上灵活地运行完整浏览器,那么新版本的Firefox在Docker中无头无阻地运行。

+1

我会添加选项#4(这是我的目标)...如果目标是在应用引擎上灵活地运行完整浏览器,那么新版本的Firefox在Docker中无头无阻地运行。 – speedplane

2

这是我从谷歌的支持得到的回答(支持ID 13757624):

我明白,你有询问,是否有可能增加 的/ dev/shm的的App Engine中的Flex大小。

不幸的是,这是不可能的。由于Flex是管理VM,因此维护默认值 。您可以尝试在您的dockerfile上手动创建一个命令 以通过'sudo'更改共享缓存,但有 不能保证,所以我不能说它可能会工作,仍然值得 尝试,因为您正在使用自定义运行时否则,不存在 其他方式。

相关问题