docker - gcloud:在将 docker 容器部署到 GCE 时添加 docker run 参数
问题描述
--shm-size
当我docker run
从Container Registry
.
根据文档,我需要使用Arguments
下面的字段,Advanced container options
但它对我不起作用。我已经添加了--shm-size 1G
这样的行:
docker exec -it 68d... df -h
仍然返回默认的 shm 大小:
shm 64M 0 64M 0% /dev/shm
有人可以建议我如何解决我的问题吗?
我也尝试在 docker 容器内手动增加它,但遇到了
mount: /dev/shm: permission denied.
问题。
更新
解决方案:
我创建了一个 bash 脚本作为手动设置 /dev/shm 大小的入口点:
#!/bin/bash
echo "none /dev/shm tmpfs defaults,size=500m 0 0" >> /etc/fstab
mount -o remount /dev/shm
dotnet Worker.dll
Dockerfile:
....
USER root
COPY ["Worker/start.sh", "app/"]
CMD ["/bin/bash", "app/start.sh"]
解决方案
高级容器选项下的参数就像将 arg 传递给 ENTRYPOINT。使用来自容器 vm 'curl -H "Metadata-Flavor: Google" " http://metadata.google.internal/computeMetadata/v1/instance/attributes/gce-container-的命令查询计算元数据“gce-container-declaration”声明"'
对于您的用例,创建非容器 VM,然后自己安装 docker 并使用我们的 docker shm arg 运行容器
推荐阅读
- python - 你如何像循环一样重新运行两个python脚本
- python - sqlite3 不返回错误但也不插入数据
- reactjs - 如何在 TypeScript 中键入 react 自定义钩子以与上下文一起使用?
- python - 如何从列表中查找和删除项目包含另一个列表项的 Python
- woocommerce - Woocommerce 税收四舍五入问题
- sql - SQL*Plus 查询结果的显示有点奇怪
- java - 使用 ForkJoin 中的 wrokstealing 而不仅仅是普通线程池的队列有什么好处?
- python - 获取使用装饰器的函数列表(在 Django 中)
- html - 示例 - Select2 Ruby on Rails 6/7 的多个 AJAX 代码(没有 Gem)
- vb.net - 路径中的非法字符(阅读说明)