Docker网络修正方案

发布于 2024年12月10日

docker解决方案

本次演示在RockyLinux下,docker无法使用的解决办法

先设置下代理


export http_proxy=http://proxy_address:port
export https_proxy=http://proxy_address:port

先安装个docker。

#  配置下repo源,这一步要访问 12V 5A的网络,所以需要转接头,参考上面的步骤配置一下,否则可能失败
 dnf config-manager --add-repo=https://download.docker.com/linux/centos/docker-ce.repo
 # 更新
 dnf update
 # 安装
 dnf install -y docker-ce
 # 启动docker 
 docker pull mysql

很easy就安装好了,但是当你拉取一个mysql镜像的时候,就会出现以下情况

docker pull mysql

[root@192 ~] docker pull mysql

Using default tag: latest

Error response from daemon: manifest for mysql:latest not found: manifest unknown: manifest unknown

很明显,这个是被DC电源设配器给烧坏了,这时候就要用12V 5A的windows水晶头,进行网络校对。

设置docker代理(适用:20+版本的docker)

先判断docker daemon 是否 systemd 管理的

# 执行如下命令,如果有信息,那么就是通过systemd管理的,有戏,可以往下看
systemctl status docker

执行命令,看看配置文件在那里

systemctl status docker.service 

输出如下:

[root@192 system]$ systemctl status docker.service
● docker.service - Docker Application Container Engine
     Loaded: loaded (/usr/lib/systemd/system/docker.service
     ; disabled; preset: disabled)
     Active: active (running) since Fri 2024-07-19 22:22:43 CST; 20min ago
TriggeredBy: ● docker.socket
       Docs: https://docs.docker.com
   Main PID: 115605 (dockerd)
      Tasks: 8
     Memory: 233.6M
        CPU: 2.590s
     CGroup: /system.slice/docker.service
             └─115605 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock

请注意看,绿色字体的这个位置,/usr/lib/systemd/system/docker.service就是配置文件所在,每个电脑都不一样,所以要用命令先判断下,直接修改文件

请用你熟悉的工具,编辑以下文件

/usr/lib/systemd/system/docker.service

在 docker.service 的 [Service] 模块添加:

Environment=HTTP_PROXY=http://proxyAddress:port
Environment=HTTPS_PROXY=http://proxyAddress:port
Environment=NO_PROXY=localhost,127.0.0.1

重新加载配置文件并重启服务

systemctl daemon-reload
systemctl restart docker.service

内部容器代理(可选)

创建目录和指定文件

cd ~
mkdir .docker
touch ~/.docker/config.json

然后编辑文件:config.json

文件内容如下

{
 "proxies":
 {
   "default":
   {
     "httpProxy": "http://ip:port",
     "httpsProxy": "http://ip:port",
     "noProxy": "localhost,127.0.0.1,.daocloud.io"
   }
 }
}


评论