小鱼 ROS 2 新书上线!点击链接查看, 新书配套视频点击链接查看。
提问前必看的发帖注意事项—— 提问前必看!不符合要求的问题拒绝回答!!
社区使用指南—如何添加标签修改密码
一键安装上新,专治Docker网络问题
-
大家好,我是怕热的小鱼,在使用Docker的过程中,很多用户会遇到网络问题,导致无法顺利拉取镜像。例如,直接使用命令
docker pull ubuntu:24.04
时,镜像可能会卡在拉取文件层的过程中,无法完成下载:docker pull ubuntu:24.04 ---- 24.04: Pulling from library/ubuntu 9c704ecd0c69: Pulling fs layer ^C
针对这种情况,小鱼提供了一款非常方便的一键安装工具,可以轻松配置Docker代理,从而解决网络问题。本文将详细介绍如何使用这一工具来配置和管理Docker代理。
使用一键安装工具配置Docker代理
首先,通过以下命令下载并运行一键安装工具:
wget http://fishros.com/install -O fishros && bash fishros
运行后,您将看到如下界面:
基础检查通过... =============================================================================== ======欢迎使用一键安装工具,人生苦短,三省吾身,省时省力省心!======= ======一键安装已开源,请放心使用:https://github.com/fishros/install ======= =============================================================================== ... (界面省略) 请输入[]内的数字以选择: 17
选择数字
17
,进入Docker代理配置。方式一:VPN模式
在配置界面中选择
1
:请选择代理模式,如果不清楚可以选2 [1]:VPN模式(需要本地有支持HTTP代理) [2]:服务模式(需要提供支持Docker代理的服务器地址) [3]:删除所有模式代理 [0]:quit 请输入[]内的数字以选择:1
接下来输入代理所在地址和端口:
请输入代理所在地址(直接回车使用:127.0.0.1): 请输入代理所在端口:7890
系统会自动创建并写入代理配置文件,并重启Docker服务:
创建文件:/etc/systemd/system/docker.service.d/proxy.conf 在/etc/systemd/system/docker.service.d/proxy.conf写入了[Service] Environment="HTTP_PROXY=http://127.0.0.1:7890/" Environment="HTTPS_PROXY=http://127.0.0.1:7890/" Environment="NO_PROXY=localhost,127.0.0.1,127.0.0.1,.example.com,接下来为你重启Docker! Run CMD Task:[sudo systemctl daemon-reload] [-]Result:success Run CMD Task:[sudo systemctl restart docker] [-]Result:success
配置完成后,您可以尝试再次拉取镜像:
docker pull ubuntu:24.04 --- 24.04: Pulling from library/ubuntu 9c704ecd0c69: Pull complete Digest: sha256:2e863c44b718727c860746568e1d54afd13b2fa71b160f5cd9058fc436217b30 Status: Downloaded newer image for ubuntu:24.04 docker.io/library/ubuntu:24.04
方式二:服务模式
同样,通过一键安装工具进入Docker代理配置界面,选择
2
:请选择代理模式,如果不清楚可以选2 [1]:VPN模式(需要本地有支持HTTP代理) [2]:服务模式(需要提供支持Docker代理的服务器地址) [3]:删除所有模式代理 [0]:quit 请输入[]内的数字以选择:2
接下来选择代理加速网址:
RUN Choose Task:[请输入括号内的数字] 请选择代理加速网址 [1]:https://dockerpull.com [2]:https://docker.fxxk.dedyn.io [3]:https://ac77d18f43e44819b553040f294b8f9b.mirror.swr.myhuaweicloud.com [0]:quit 请输入[]内的数字以选择:1
系统会自动创建并写入代理配置文件,并重启Docker服务:
创建文件:/etc/docker/daemon.json 在/etc/docker//daemon.json写入了{"registry-mirrors": ["https://dockerpull.com"]},接下来为你重启Docker! Run CMD Task:[sudo systemctl daemon-reload] [-]Result:success Run CMD Task:[sudo systemctl restart docker] [-]Result:success
配置完成后,您可以尝试再次拉取镜像:
docker pull ubuntu:20.04 --- 20.04: Pulling from library/ubuntu 9ea8908f4765: Already exists Digest: sha256:0b897358ff6624825fb50d20ffb605ab0eaea77ced0adb8c6a4b756513dec6fc Status: Downloaded newer image for ubuntu:20.04 docker.io/library/ubuntu:20.04
注意事项
-
删除所有模式代理:如果需要删除已配置的代理,可以选择
3
:请选择代理模式,如果不清楚可以选2 [1]:VPN模式(需要本地有支持HTTP代理) [2]:服务模式(需要提供支持Docker代理的服务器地址) [3]:删除所有模式代理 [0]:quit 请输入[]内的数字以选择:3
系统会自动删除所有代理配置并重启Docker服务
-
不要同时使用VPN模式和服务模式:这可能会导致代理配置冲突,影响正常使用。在配置新代理前,建议先删除已有的代理配置。
通过使用小鱼的一键安装工具,您可以轻松解决Docker网络问题,提高工作效率。如有问题,欢迎访问小鱼的论坛进行反馈:https://fishros.org.cn/forum
-
-
-
-
此回复已被删除! -
小鱼昨天我按照你的一键配置docker代理中的方法二中的华为云配置成功,并且docker pull成功拉回镜像,但是再使用FishBot教程]3. 主控板固件烧录与配置里的:docker run -it --rm -v /dev:/dev -v /dev/shm:/dev/shm --privileged --net=host microros/micro-ros-agent:$ROS_DISTRO udp4 --port 8888 -v6,还是失败了
这种要怎么办 -
@1594982308 换一个试试,华为云的那个是我自己的私有链接,我分享出来了,估计用的人多给封了,你可以到华为云自己搞个链接输进去
-
此回复已被删除! -
@小鱼
目前已经换成自己的华为云加速地址了,使用docker run -it --rm -v /dev:/dev -v /dev/shm:/dev/shm --privileged --net=host microros/micro-ros-agent:$ROS_DISTRO udp4 --port 8888 -v6 指令还是无法成功下载。
docker: error pulling image configuration: download failed after attempts=6: dial tcp [2a03:2880:f11f:83:face:b00c:0:25de]:443: i/o timeout.
See 'docker run --help'. -
@1594982308 试试第二个:
请输入[]内的数字以选择:2
https://docker.fxxk.dedyn.io
创建文件:/etc/docker/daemon.json
在/etc/docker//daemon.json写入了{"registry-mirrors": ["https://docker.fxxk.dedyn.io"]},接下来为你重启Docker!我刚测试下还能用
-
@小鱼
使用这个我docke pull ubuntu 也抓去不成功了。使用自己的华为云加速链接时:
docker pull ubuntu 成功,但是手动抓去microros/mircro-ros-agent 不成功 -
@1594982308 你直接用这个试试pull microros 实在不行我搞个离线的
-
@小鱼 我用https://github.com/tech-shrimp/docker_installer这个上面给的镜像站配置,然后pull microros/micro-ros-agent 然后下载成功啦
-
@1594982308
目前配置成功啦,谢谢小鱼大哥的耐心回复 -
此回复已被删除! -
我按照第一种办法试过,但是出现了这样的情况,我又试了试第二种,还是和图片一样
-
@1448386969 做build 和普通使用不太一样,建议还是用第一种方法
-
-
-
-
-
-
-
-
-
-
-
-
-
-
@1594982308 在 一键安装上新,专治Docker网络问题 中说:
pull microros/micro-ros-agent
小鱼你好,为按照你的指导,成功拉回镜像,但是在进行sudo docker run -it --rm -v /dev:/dev -v /dev/shm:/dev/shm --privileged --net=host microros/micro-ros-agent:$ROS_DISTRO serial --dev /dev/ttyUSB0 -v6 时失败了。以下是大致命令过程,最后是失败的报错。麻烦麻烦小鱼看一下。
ros:foxy(1) noetic(2) ?
1
ROS_DISTRO was set to 'noetic' before. Please make sure that the environment does not mix paths from different distributions.
robot@WP:~$ wget http://fishros.com/install -O fishros && bash fishros
--2024-08-30 23:20:07-- http://fishros.com/install
正在解析主机 fishros.com (fishros.com)... 47.119.165.169
正在连接 fishros.com (fishros.com)|47.119.165.169|:80... 已连接。
已发出 HTTP 请求,正在等待回应... 301 Moved Permanently
位置:http://fishros.com/install/ [跟随至新的 URL]
--2024-08-30 23:20:07-- http://fishros.com/install/
再次使用存在的到 fishros.com:80 的连接。
已发出 HTTP 请求,正在等待回应... 200 OK
长度: 579 [application/octet-stream]
正在保存至: “fishros”fishros 100%[===================>] 579 --.-KB/s 用时 0s
2024-08-30 23:20:07 (31.4 MB/s) - 已保存 “fishros” [579/579])
[sudo] robot 的密码:
正在读取软件包列表... 完成
正在分析软件包的依赖关系树
正在读取状态信息... 完成
python3-distro 已经是最新版 (1.4.0-1)。
python3-yaml 已经是最新版 (5.3.1-1ubuntu0.1)。
升级了 0 个软件包,新安装了 0 个软件包,要卸载 0 个软件包,有 90 个软件包未被升级。
--2024-08-30 23:20:09-- http://mirror.fishros.com/install/tools/base.py
正在解析主机 mirror.fishros.com (mirror.fishros.com)... 47.119.165.169
正在连接 mirror.fishros.com (mirror.fishros.com)|47.119.165.169|:80... 已连接。
已发出 HTTP 请求,正在等待回应... 200 OK
长度: 44650 (44K) [application/octet-stream]
正在保存至: “/tmp/fishinstall/tools/base.py”/tmp/fishinstall/to 100%[===================>] 43.60K --.-KB/s 用时 0.07s
2024-08-30 23:20:09 (664 KB/s) - 已保存 “/tmp/fishinstall/tools/base.py” [44650/44650])
Run CMD Task:[dpkg --print-architecture]
[-]Result:successRun CMD Task:[wget https://fishros.org.cn/forum/topic/1733 -O /tmp/t1733 -q && rm -rf /tmp/t1733]
[-]Result:success基础检查通过...
======欢迎使用一键安装工具,人生苦短,三省吾身,省时省力省心!=======
======一键安装已开源,请放心使用:https://github.com/fishros/install =======.-~~~~~~~~~-._ _.-~~~~~~~~~-. __.' ~. .~ `.__ .'// 开卷有益 \./ 书山有路 \ `. .'// 可以多看看小鱼的文章 | 关注公众号鱼香ROS \ `. .'// .-~~~~~~~~~~~~~~-._ | _,-~~~~~~~~~~~. \`. .'//.-" `-. | .-' "-.\`. .'//______.============-.. \ | / ..-============.______\`. .'______________________________\|/______________________________` ----------------------------------------------------------------------
RUN Choose Task:[请输入括号内的数字]
---众多工具,等君来用---
ROS相关:
[1]:一键安装(推荐):ROS(支持ROS/ROS2,树莓派Jetson)
[3]:一键安装:rosdep(小鱼的rosdepc,又快又好用)
[4]:一键配置:ROS环境(快速更新ROS环境设置,自动生成环境选择)
[9]:一键安装:Cartographer(18 20测试通过,16未测. updateTime 20240125)
[11]:一键安装:ROS Docker版(支持所有版本ROS/ROS2)
[16]:一键安装:系统自带ROS (!!警告!!仅供特殊情况下使用)常用软件:
[2]:一键安装:github桌面版(小鱼常用的github客户端)
[6]:一键安装:NodeJS环境
[7]:一键安装:VsCode开发工具
[8]:一键安装:Docker
[10]:一键安装:微信(可以在Linux上使用的微信)
[12]:一键安装:PlateformIO MicroROS开发环境(支持Fishbot)
[14]:一键安装:科学上网代理工具
[15]:一键安装:QQ for Linux配置工具:
[5]:一键配置:系统源(更换系统源,支持全版本Ubuntu系统)
[13]:一键配置:python国内源
[17]:一键配置: Docker代理(支持VPN+代理服务两种模式)请输入[]内的数字以选择:17
--2024-08-30 23:20:17-- http://mirror.fishros.com/install/tools/tool_config_docker_proxy.py
正在解析主机 mirror.fishros.com (mirror.fishros.com)... 47.119.165.169
正在连接 mirror.fishros.com (mirror.fishros.com)|47.119.165.169|:80... 已连接。
已发出 HTTP 请求,正在等待回应... 200 OK
长度: 2792 (2.7K) [application/octet-stream]
正在保存至: “/tmp/fishinstall/tools/tool_config_docker_proxy.py”/tmp/fishinstall/to 100%[===================>] 2.73K --.-KB/s 用时 0s
2024-08-30 23:20:17 (400 MB/s) - 已保存 “/tmp/fishinstall/tools/tool_config_docker_proxy.py” [2792/2792])
欢迎使用一键配置Docker代理(支持VPN+代理服务两种模式),本工具由作者小鱼提供
RUN Choose Task:[请输入括号内的数字]
请选择代理模式,如果不清楚可以选2
[1]:VPN模式(需要本地有支持HTTP代理)
[2]:服务模式(需要提供支持Docker代理的服务器地址)
[3]:删除所有模式代理
0:quit
请输入[]内的数字以选择:2
请输入代理网址(直接回车将进入选择界面):https://docker.fxxk.dedyn.io
创建文件:/etc/docker/daemon.json
在/etc/docker//daemon.json写入了{"registry-mirrors": ["https://docker.fxxk.dedyn.io"]},接下来为你重启Docker!
Run CMD Task:[sudo systemctl daemon-reload]
[-]Result:successRun CMD Task:[sudo systemctl restart docker]
[-]Result:success配置完成,接下来你可以尝试再次拉取镜像了~
欢迎加入机器人学习交流QQ群:438144612(入群口令:一键安装)
鱼香小铺正式开业,最低499可入手一台能建图会导航的移动机器人,淘宝搜店:鱼香ROS 或打开链接查看:https://item.taobao.com/item.htm?id=696573635888
如在使用过程中遇到问题,请打开:https://fishros.org.cn/forum 进行反馈
robot@WP:~$ docker pull ubuntu:22.04
22.04: Pulling from library/ubuntu
Digest: sha256:adbb90115a21969d2fe6fa7f9af4253e16d45f8d4c1e930182610c4731962658
Status: Image is up to date for ubuntu:22.04
docker.io/library/ubuntu:22.04
robot@WP:~$ sudo docker run -it --rm -v /dev:/dev -v /dev/shm:/dev/shm --privileged --net=host microros/micro-ros-agent:$ROS_DISTRO serial --dev /dev/ttyUSB0 -v6
Unable to find image 'microros/micro-ros-agent:foxy' locally
foxy: Pulling from microros/micro-ros-agent
99803d4b97f3: Downloading [================================> ] 18.8MB/28.58MB
db5ff3f6c5dd: Download complete
2b302bcd4745: Download complete
11384cc19c20: Download complete
7c8e1899a5dd: Download complete
0ed172a7f8a3: Downloading [======> ] 16.08MB/120.4MB
697c4bfe41b1: Download complete
275738f86033: Downloading [=======================================> ] 57.31MB/73.34MB
6c0cfeddf324: Waiting
c3049fa8b211: Waiting
288a0278b454: Waiting
b7218d53976c: Waiting
4f4fb700ef54: Waiting
ea51c84e90c0: Waiting
8772436ffb1c: Pulling fs layer
38b221044e3a: Waiting
d1cd86e61e41: Pulling fs layer
97fabc4d16df: Waiting
7ddea865b091: Waiting
f5a38820e852: Pulling fs layer
^C -
@2102685741 没看到失败欸
-
-
-
小鱼你好,我在构建镜像时拉取不到镜像加速后为啥还是拉取不了镜像呢? -
两个都试过都冲突了怎么办,好像前面两种方法运行之后再运行第三种方法也会报错