常见问题
常见问题及解决方法
提示缺少权限 permission denied
问题及分析
permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Get “http://%2Fvar%2Frun%2Fdocker.sock/v1.46/version": dial unix /var/run/docker.sock: connect: permission denied
原因是 docker
进程使用的是 Unix Socket
,而不是 TCP 端口
默认情况下 Unix Socket 属于 root 用户,需要提权
解决方法
新建 docker用户组
,并将当前用户添加到 docker用户组
中。
shell
|
|
Uncomplicated Firewall (UFW)
防火墙失效问题
问题及分析
如果系统中使用了 Uncomplicated Firewall (UFW) 防火墙。
Docker 和 UFW 的组合可能回带来一些安全问题。
因为 UFW 是 iptables 的一个上层封装,底层功能依旧还是 iptables 实现。
而 Docker 实际上绕过了 UFW 并直接修改了 iptables,所以一个容器可以绑定一个端口。
这就意味着,所有你设置的 UFW 规则都将在 Docker 容器中失效。
解决方法
禁用 Docker 直接操作 iptables
shell
|
|