V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
nagisaushio
V2EX  ›  程序员

docker daemon 代理 vs 自建镜像站

  •  
  •   nagisaushio ·
    hsfzxjy · 9 天前 · 1678 次点击

    我自己一直都是用以下方式给 docker daemon 加代理:假如本地 http 代理地址是 127.0.0.1:1082 ,则修改文件 /etc/systemd/system/multi-user.target.wants/docker.service (不同系统可能位置不一样):

    ...
    [Service]
    Type=notify
    # 注意下面两行
    Environment="HTTP_PROXY=http://127.0.0.1:1082"
    Environment="HTTPS_PROXY=http://127.0.0.1:1082"
    ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock
    ExecReload=/bin/kill -s HUP $MAINPID
    
    ...
    

    这样用了很久一直没什么问题,因此对镜像站也没什么需求。但最近看到好多自建 docker 镜像站的帖子,却少有看到推荐这个方法的。比较好奇有什么场景是 docker daemon proxy 所无法解决的吗?

    9 条回复    2024-06-17 00:00:01 +08:00
    xiri
        1
    xiri  
       9 天前
    服务器等环境没有代理
    qinxi
        2
    qinxi  
       9 天前
    本地当然没问题了, 都能上 V 站了, 肯定都会翻了. 问题时有些地方没有代理, 也不能使用.
    TabGre
        3
    TabGre  
       9 天前 via iPhone
    我通过 docker 搭的 clash 一直过不去
    caola
        4
    caola  
       9 天前
    我本地是用代理,但其他地方还真不方便使用代理, 然后就弄过两种方式:一种是反代镜像(不缓存),还有一种就是在防火墙上弄一下端口转发,再设置一上 hosts 指向
    mohumohu
        5
    mohumohu  
       9 天前
    这样有个小问题好像是容器启动之后会用到这个环境变量,不该走代理的程序可能走了代理
    cdlnls
        6
    cdlnls  
       9 天前 via Android
    这个方法我也一直在用,不过不是加的环境变量,改的 dockerd 启动参数,可以指定 --https-proxy ,效果一样。
    totoro625
        7
    totoro625  
       9 天前
    用镜像而不是部署代理的原因是:
    1. 腾讯云、阿里云曾经检测到代理软件的存在直接封机器(甚至不论你是否运行)
    2. 机器不是自己独享的,梯子账户是自己的
    3. 批量部署麻烦,不能每个机器都配置代理
    4. 梯子也有成本
    Gldwolf
        8
    Gldwolf  
       9 天前
    Gldwolf
        9
    Gldwolf  
       9 天前
    @Gldwolf v23.0 及以后版本也可以这么配置 daemon proxy, ref: https://docs.docker.com/config/daemon/systemd/
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5496 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 02:46 · PVG 10:46 · LAX 19:46 · JFK 22:46
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.