而且下面也给出了具体的操作方法。
通过上一步我们看到群晖下的 Docker 版本是大于 1.10.0
的,按照文档我们可以通过修改daemon配置文件 /etc/docker/daemon.json
来使用加速器。
但是,这里一定要说但是,文档中的方法是对应于在 Ubuntu
等Linux系统下通过 Docker
官方的安装方式安装的Docker而言的,对于群晖下的Docker来说,并不是这样的。
通过查找我发现群晖中Docker的配置文件地址在 /var/packages/Docker/etc/dockerd.json
下,
使用vim编辑:
1
|
root@HomeNAS:~# vim /var/packages/Docker/etc/dockerd.json
|
可以看到内容如下:
1
2
3
4
|
{
“ipv6”: true,
“registry-mirrors”: []
}
|
然后将从阿里云获得的加速器地址填入 registry-mirrors
部分即可:
1
2
3
4
|
{
“ipv6”: true,
“registry-mirrors”: [“https://xxxxxx.mirror.aliyuncs.com”]
}
|
注意:网址要用英文的双引号引起来再添加到中括号中。
当然,也可以使用其他的加速器地址。比如使用Docker中国官方镜像的加速地址:
1
2
3
4
|
{
“ipv6”: true,
“registry-mirrors”: [“https://registry.docker-cn.com”]
}
|
然后需要重启群晖下的Docker服务。
重启群晖下的Docker服务
上面也说到,群晖的DSM系统并不像其他的linux系统如 Ubuntu
那样,管理服务可以使用 systemctl
(Ubuntu16.04后版本) 或 service
来操作:
1
2
3
4
5
|
root@HomeNAS:~# systemctl
-ash: systemctl: command not found
root@HomeNAS:~# service
-ash: service: command not found
root@HomeNAS:~#
|
可以看到这两个命令在群晖下都是找不到的。
那是因为在群晖下的操作命令都要加上 syno
前缀来操作,执行命令 synoservice
或 synoservice --help
:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
|
root@HomeNAS:~# synoservice
Copyright (c) 2003-2017 Synology Inc. All rights reserved.
SynoService Tool Help (Version 15217)
Usage: synoservice
–help Show this help
–help-dev More specialty functions for deveplopment
–is-enabled [ServiceName] Check if the service is enabled
–status [ServiceName] Get the status of specified services
–enable [ServiceName] Set runkey to yes and start the service (alias to –start)
–disable [ServiceName] Set runkey to no and stop the service (alias to –stop)
–hard-enable [ServiceName] Set runkey to yes and start the service and its dependency (alias to –hard-start)
–hard-disable [ServiceName] Set runkey to no and stop the service and its dependency (alias to –hard-stop)
–restart [ServiceName] Restart the given service
–reload [ServiceName] Reload the given service
–pause [ServiceName] Pause the given service
–resume [ServiceName] Resume the given service
–pause-by-reason [ServiceName] [Reason] Pause the service by given reason
–resume-by-reason [ServiceName] [Reason] Resume the service by given reason
–pause-all (-p) [Reason] (Event) Pause all service by given reason with optional event(use -p to include packages)
–pause-all-no-action (-p) [Reason] (Event) Set all service runkey to no but leave the current service status(use -p to include packages)
–resume-all (-p) [Reason] Resume all service by given reason(use -p to include packages)
–reload-by-type [type] (buffer) Reload services with specified type
–restart-by-type [type] (buffer) Restart services with specified type
Type may be {file_protocol|application}
Sleep $buffer seconds before exec the command (default is 0)
root@HomeNAS:~#
|
好的,现在已经知道了如何在群晖下管理服务,那么按照步骤,下一步只需要重启Docker服务使其应用上加速器地址即可。
按照上面的规律可想而知,在群晖下Docker的守护进程服务名称肯定会和在 Ubuntu
下的名称不一样,那我们如何来找到呢?
可以通过 synoservicecfg --list
命令来查看当前群晖系统下所有运行的服务:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
root@HomeNAS:~# synoservicecfg –list
DSM
apparmor
atalk
avahi
bluetoothd
bonjour
…
…
pkgctl-Docker
pkgctl-FileStation
pkgctl-LogCenter
pkgctl-PDFViewer
pkgctl-PHP7.0
pkgctl-PhotoStation
…
…
|
可以看到通过群晖的 “套件中心” 添加的套件程序的服务名称均以 pkgctl-
为前缀来命名。
然后重启群晖的docker服务:
1
2
|
root@HomeNAS:~# synoservice –restart pkgctl-Docker
root@HomeNAS:~#
|
如果没有错误提示,说明docker服务重启正常。
转载请注明:SuperIT » 群晖 docker 配置文件