开发者社区 问答 正文

google-chrome无法移至新名称空间

我试图以非root用户身份在docker容器中运行google-chrome --headless以执行一些测试。我每次尝试启动它时,都会引发以下错误:

谷歌浏览器--headless

无法移动到新的名称空间:支持PID名称空间,支持网络名称空间,但失败:errno =不允许的操作无法生成minidump.Illegal指令

它是在k8s集群中运行的docker容器。操作系统是Ubuntu 16.04。

命名空间已启用,用户为非root用户

我不想使用--no-sandbox选项,因为这是一个安全问题。

我不能使用docker run --security-opt = syscomp:unconfined作为通过头盔部署的方式。

是否需要在容器本身内为Chrome设置系统权限?

展开
收起
祖安文状元 2020-01-16 17:36:56 575 分享 版权
1 条回答
写回答
取消 提交回答
  • 在广泛研究互联网之后,我想我找到了答案:

    沙箱 出于安全原因,当Google Chrome在基于容器的环境中运行时,无法提供沙箱。要在基于容器的环境中使用Chrome,请将--no-sandbox标志传递给chrome可执行文件

    因此,对于我来说,似乎没有比--no-sandbox更好的解决方案了,尽管它不是很安全,但是互联网上有人声称使用“ --no-sandbox”仍然可以安全运行在容器内,可以采取任何额外的保护措施

    2020-01-16 17:37:01
    赞同 展开评论