文章目录

  • 0、前言
  • 1、寻找适合你网络的最优镜像源
  • 1.1、首先点击下图示红框处进入UnRaid的终端
  • 1.2、输入如下代码检测每一个镜像源的速度:
  • 2、更改镜像源方法
  • 2.1、修改Go文件方法
  • 2.2、用户自定义脚本方式
  • 2.2.1、安装User Scripts插件
  • 2.2.2、在User Scripts插件中添加更改镜像源代码
  • 3、结束



0、前言

由于Docker的服务器都在国外,国内访问经常抽疯,导致UnRaid在安装很多插件或应用时不成功或者速度巨慢。于是就想能不能给UnRaid添加国内可快速访问Docker的镜像源,经搜索网上也有很多教程,也给出了一些常见的镜像源,但不一定适合每一个人的网络环境。通过一番学习,参照有关大佬的教程,实现了如下半自动方案,在此分享给大家,也当做自己的一个备忘吧。


1、寻找适合你网络的最优镜像源

网络上能够搜到了大概有如下镜像源:
网易: hub-mirror.c.163.com
阿里云: [你自己申请的ID].mirror.aliyuncs.com
docker中国站点:registry.docker-cn.com
热心网友自建:dockerproxy.com
中国科技大学: docker.mirrors.ustc.edu.cn

但并不一定每一个镜像源在你的UnRaid中都能正常访问,可以简单通过如下方式检测:

1.1、首先点击下图示红框处进入UnRaid的终端

unraid docker怎么升级 unraid docker 加速_linux

1.2、输入如下代码检测每一个镜像源的速度:

(以下载linuxserver/qbittorrent镜像为例)
 time docker pull 镜像源/linuxserver/qbittorrent,比如我就是依次运行
 time docker pull hub-mirror.c.163.com/linuxserver/qbittorrent
 time docker pull dockerproxy.com/linuxserver/qbittorrent
 time docker pull registry.docker-cn.com/linuxserver/qbittorrent
 time docker pull docker.mirrors.ustc.edu.cn/linuxserver/qbittorrent
 …
 time docker pull linuxserver/qbittorrent(直接拉取官方源)


结果发现在我的网络下只有网易、阿里云和网友自建镜像源可以正常访问,其它的都无响应,可以吧每一个源的运行时间从小到大作一个排序,在接下来的更改镜像源步骤中要用到。

2、更改镜像源方法

可以采取如下两种方法之一:

2.1、修改Go文件方法

参照下图,在UnRaid菜单【工具】→【Config File Editor】→下拉框中找到go文件,然后添加如蓝框中所示内容(可根据你在上一步测出的时间有小到大排序),【应用】后需要重启UnRaid或关闭在开启Docker功能才能生效。(为便于大家修改,将代码部分示意如下)

mkdir -p /etc/docker
 tee /etc/docker/daemon.json <<-‘EOF’
 {
 “registry-mirrors”: [
 “http://hub-mirror.c.163.com”,
 “https://dockerproxy.com”]
 }

EOF

unraid docker怎么升级 unraid docker 加速_镜像源_02

2.2、用户自定义脚本方式

2.2.1、安装User Scripts插件

在【应用】中搜索安装User Scripts即可完成安装。

2.2.2、在User Scripts插件中添加更改镜像源代码

——在UnRaid【设置】→ 【用户实用程序】 → 【User Scripts】,单击“ADD NEW SCRIPT”(新建脚本),然后为此脚本输入一个名称,比如“Change_mirrors”,然后但击“OK”确定。

unraid docker怎么升级 unraid docker 加速_linux_03


——调出脚本编辑框

unraid docker怎么升级 unraid docker 加速_linux_04


——添加代码:

unraid docker怎么升级 unraid docker 加速_linux_05


# 创建目录
 mkdir -p /etc/docker
 # 更新镜像源
 tee /etc/docker/daemon.json <<-‘EOF’
 {
 “registry-mirrors” : [
 “http://hub-mirror.c.163.com”,
 “https://dockerproxy.com”]
 }
 EOF
 # 只有重启 Docker 服务,该部分设置才会生效
 is_docker_running=$(/etc/rc.d/rc.docker status | awk 'NR == 1 {print} ’ | grep running)
 echo $is_docker_running
 if [ ! -z “$is_docker_running” ]; then
 /etc/rc.d/rc.docker restart
 fi

3、结束

现在再安装应用和插件,估计就顺溜多了。