这是一篇防止自己忘记步骤的随记,仅供后来者参考
众所周知的原因,国内docker访问仓库很难,虽然群晖能直接在页面中设置代理
但只能在群晖的docker部署页面下载及部署docker
然而很多关于docker的教程都是在SSH界面使用docker pull命令部署docker,而使用docker pull在群晖中设置代理并没有用,依旧无法下载部署docker,所以这里要对docker本身设置代理
方法:
登录到群晖 NAS
在控制面板>终端机和SNMP中启用SSH功能
点击应用保存,使用SSH工具连接群晖,输入登录群晖的账号密码,此时使用的是普通账号,权限不够
输入
sudo -isudo -isudo -i
获取管理员权限
输入密码,密码输入过程不会显示,输入完成,回车即可!
此时我们获得root账户权限
创建 Docker 服务配置目录
我们要为 Docker 创建一个配置文件夹。在 SSH 终端中执行以下命令:
mkdir -p /etc/systemd/system/pkg-ContainerManager-dockerd.service.dmkdir -p /etc/systemd/system/pkg-ContainerManager-dockerd.service.dmkdir -p /etc/systemd/system/pkg-ContainerManager-dockerd.service.d
创建并编辑代理配置文件
现在我们要创建一个配置文件来存放代理信息。继续输入以下命令:
touch /etc/systemd/system/pkg-ContainerManager-dockerd.service.d/http-proxy.conftouch /etc/systemd/system/pkg-ContainerManager-dockerd.service.d/http-proxy.conftouch /etc/systemd/system/pkg-ContainerManager-dockerd.service.d/http-proxy.conf
然后,用 vi 文本编辑器打开它:
vi /etc/systemd/system/pkg-ContainerManager-dockerd.service.d/http-proxy.confvi /etc/systemd/system/pkg-ContainerManager-dockerd.service.d/http-proxy.confvi /etc/systemd/system/pkg-ContainerManager-dockerd.service.d/http-proxy.conf
按下 i 键,将下列代码插入:
[Service] Environment="HTTP_PROXY=http://你的代理IP:端口" Environment="HTTPS_PROXY=http://你的代理IP:端口" Environment="NO_PROXY=localhost,127.0.0.1"[Service] Environment="HTTP_PROXY=http://你的代理IP:端口" Environment="HTTPS_PROXY=http://你的代理IP:端口" Environment="NO_PROXY=localhost,127.0.0.1"[Service] Environment="HTTP_PROXY=http://你的代理IP:端口" Environment="HTTPS_PROXY=http://你的代理IP:端口" Environment="NO_PROXY=localhost,127.0.0.1"
按键盘esc键退出插入模式,输入:wq回车保存
重新加载并重启 Docker 服务:
systemctl daemon-reload systemctl restart pkg-ContainerManager-dockerd.servicesystemctl daemon-reload systemctl restart pkg-ContainerManager-dockerd.servicesystemctl daemon-reload systemctl restart pkg-ContainerManager-dockerd.service
验证代理是否设置成功:
systemctl show --property=Environment pkg-ContainerManager-dockerd.servicesystemctl show --property=Environment pkg-ContainerManager-dockerd.servicesystemctl show --property=Environment pkg-ContainerManager-dockerd.service
出现下图
表示docker已通过代理访问镜像仓库
注意:
通过此方法只能用docker pull下载docker,群晖docker页面仓库依旧无法访问!
本文参考改编自:【新手教程】群晖 DSM 7.2 为 Docker 设置 HTTP/HTTPS/SOCKS5 代理
若有侵权即删
原文链接:https://blog.csdn.net/weixin_45166329/article/details/143870257?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522fb20ee56c540451680fb9bcef74a6aa4%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fblog.%2522%257D&request_id=fb20ee56c540451680fb9bcef74a6aa4&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~blog~first_rank_ecpm_v1~times_rank-16-143870257-null-null.nonecase&utm_term=%E9%BB%91%E7%BE%A4%E6%99%96%E9%95%9C%E5%83%8F