当前位置: 首页> 教育> 幼教 > 37.docker拉取镜像失败和创建mysql5.6容器

37.docker拉取镜像失败和创建mysql5.6容器

时间:2025/7/11 8:04:20来源:https://blog.csdn.net/qq_36352889/article/details/141035382 浏览次数:1次

问题

docker pull 拉取镜像文件超时,网络连接不上。

解决方案

/etc/docker目录下创建daemon.json文件。

文件内容为:

{
  "builder": {
    "gc": {
      "defaultKeepStorage": "20GB",
      "enabled": true
    }
  },
  "experimental": true,
  "features": {
    "buildkit": true
  },
  "insecure-registries": [
    "172.24.86.231"
  ],
  "registry-mirrors": [
    "https://dockerproxy.com",
    "https://mirror.baidubce.com",
    "https://ccr.ccs.tencentyun.com",
    "https://docker.m.daocloud.io",
    "https://docker.nju.edu.cn",
    "https://docker.mirrors.ustc.edu.cn"
  ],
  "log-driver":"json-file",
  "log-opts": {
    "max-size":"500m", 
    "max-file":"3"
  }
}

让配置文件生效执行命令:

sudo systemctl daemon-reload

sudo systemctl restart docker

拉取镜像成功:
docker pull mysql:5.6

启动mysql5.6的docker容器

docker run -id -p 3307:3306 --name=c_mysql -v $PWD/conf:/etc/mysql/conf.d -v $PWD/logs:/logs -v $PWD/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 mysql:5.6

 进去容器,然后登录mysql数据库:

 

 % 表示允许任何地址访问

如果这些配置都配置好,navicat还是无法访问到mysql容器的原因是:

宿主机路由的问题,路由没开就会导致宿主机与容器实例网络隔绝,所以是要打开的。

查看路由是否打开:

sysctl net.ipv4.ip_forward

返回1代表路由已开启,为0就是未开启。

开启路由

找到文件/etc/sysctl.conf 文件,将下面的内容写入其中:

net.ipv4.ip_forward = 1

执行命令:

sysctl -p # 加载内核

sysctl neti.ipv4.ip_forward # 再次查看路由是否开启。

关键字:37.docker拉取镜像失败和创建mysql5.6容器

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

责任编辑: