任何人都可以帮助我理解下面的错误和其他喜欢它吗?我已经用Google搜索了,但对我的背景没有任何意义。我下载了我的Docker Image,但是容器拒绝启动。引用的名称空间并不总是26,但可以是20-29之间的任何名称。我将我的Docker容器启动到EC2实例并从AWS ECR中提取图像。无论我是重新启动实例还是重新启动docker,错误都是持久的。
docker: Error response from daemon: oci runtime error:
container_linux.go:247: starting container process caused
"process_linux.go:334: running prestart hook 0 caused \"error running
hook: exit status 1, stdout: , stderr: time=\\\"2017-05-
11T21:00:18Z\\\" level=fatal msg=\\\"failed to create a netlink handle:
failed to set into network namespace 26 while creating netlink socket:
invalid argument\\\" \\n\"".
答案 0 :(得分:2)
从我的Github问题更新:https://github.com/moby/moby/issues/33656
似乎在使用Docker的容器上运行的DeepSecurity代理(ds_agent)可能会导致此问题。许多其他用户报告了此问题,导致我进行调查。之前我在这些盒子上安装了ds_agent,然后将其替换为其他软件作为业务决策,这就是问题消失的时候。如果您遇到此问题,可能值得检查您是否正在运行ds_agent进程,或使用' htop'运行可能导致冲突的其他类似服务。正如上面问题中的用户所做的那样。
答案 1 :(得分:1)
您是否尝试使用--privileged
选项运行它?
如果仍然无法运行,请尝试添加--security-opts seccomp=unconfined
以及--security-opts apparmor=unconfined
或--security-opts selinux=unconfined
,具体取决于您是否正在运行Ubuntu或启用了SELinux的分发
如果有效,请尝试使用--cap-add = NET_ADMIN替换--privileged option
,因为出于安全原因,不鼓励以特权模式运行容器。