首页 > 解决方案 > 来自守护程序的 Docker 错误响应:无法启动容器

问题描述

我需要帮助。我有码头工人的问题。我的操作系统是 Centos 6。tnx

$ sudo docker run -it --name atom-mysql -p 3310:3306 -e MYSQL_ROOT_PASSWORD=root -d mysql/mysql-server:5.5.44

无法在本地找到图像 'mysql/mysql-server:5.5.44' 5.5.44:从 mysql/mysql-server 拉取

8c3e49cb06dc: Pull complete 90fed8b1ceab: Pull complete 8a2b759d9dd8: Pull complete 33529391d37f: Pull complete 4268ebc0501a: Pull complete 71c6842c97e5: Pull complete 80c90f40a6e5: Pull complete 0be01ae3bd72: Pull complete b1b23a5825ac: Pull complete d4b9b32ae2f0: Already exists Digest: sha256:64c6209e62002209ea3f35125bf6e10f9f4807a3a80bc1f3730c8b8313dad457 Status: Downloaded newer image对于 mysql/mysql-server:5.5.44 264a844c0f2b6e7f6a9fff872d401709216fb5704d24225233972f0719e52b6c

来自守护程序的错误响应:无法启动容器 264a844c0f2b6e7f6a9fff872d401709216fb5704d24225233972f0719e52b6c:iptables 失败:iptables -t filter -A DOCKER!-i docker0 -o docker0 -p tcp -d 172.17.0.4 --dport 3306 -j ACCEPT: iptables: 没有该名称的链/目标/匹配。(退出状态 1)

标签: dockercentos6

解决方案


看起来您缺少 docker 防火墙规则。Docker 创建自己的名为 DOCKER* 的 iptables 链。可以通过命令查看iptables -L

...
链码头(4 参考)
...
链 DOCKER-ISOLATION-STAGE-1(1 个参考)
...
链 DOCKER-ISOLATION-STAGE-2(4 个参考)
...
链 DOCKER-USER (1 参考)
...

如果您至少没有看到 DOCKER 链,您需要找出为什么会错过它。尝试重新启动 docker 服务以重新初始化 docker iptables 规则:

service docker restart

但请记住,此操作将停止所有正在运行的容器


推荐阅读