修改 Docker 容器的 http_proxy 和 https_proxy

修改 Docker 容器的 http_proxy 和 https_proxy 可以通过几种方式实现。以下是一些常用的方法:

  1. 在运行容器时设置环境变量:

    当你启动一个新的容器时,可以使用 -e 选项设置这些环境变量:

    复制代码
    docker run -e HTTP_PROXY=http://proxy.example.com:8080 -e HTTPS_PROXY=http://proxy.example.com:8080 your_image
  2. 对于已经运行的容器:

    a. 使用 docker exec 命令:

    复制代码
    docker exec -it your_container_name /bin/bash
    export HTTP_PROXY=http://proxy.example.com:8080
    export HTTPS_PROXY=http://proxy.example.com:8080

    注意,这种方法只在当前会话中有效,容器重启后就会失效。

    b. 修改容器的 /etc/environment 文件:

    复制代码
    docker exec -it your_container_name /bin/bash
    echo "HTTP_PROXY=http://proxy.example.com:8080" >> /etc/environment
    echo "HTTPS_PROXY=http://proxy.example.com:8080" >> /etc/environment

    这种方法在容器重启后仍然有效。

  3. 在 Dockerfile 中设置:

    如果你正在构建自己的镜像,可以在 Dockerfile 中设置这些环境变量:

    复制代码
    ENV HTTP_PROXY http://proxy.example.com:8080
    ENV HTTPS_PROXY http://proxy.example.com:8080
  4. 使用 Docker Compose:

    如果你使用 Docker Compose,可以在 docker-compose.yml 文件中设置环境变量:

    yaml 复制代码
    version: '3'
    services:
      your_service:
        image: your_image
        environment:
          - HTTP_PROXY=http://proxy.example.com:8080
          - HTTPS_PROXY=http://proxy.example.com:8080
  5. 修改 Docker 守护进程的配置:

    你可以为 Docker 守护进程设置全局代理,这会影响所有容器。编辑 /etc/systemd/system/docker.service.d/http-proxy.conf 文件(如果不存在就创建它):

    复制代码
    [Service]
    Environment="HTTP_PROXY=http://proxy.example.com:8080"
    Environment="HTTPS_PROXY=http://proxy.example.com:8080"

    然后重启 Docker 服务:

    复制代码
    sudo systemctl daemon-reload
    sudo systemctl restart docker

注意事项:

  • 确保使用正确的代理地址和端口。
  • 某些应用程序可能使用小写的环境变量名(http_proxy, https_proxy),你可能需要同时设置大写和小写版本。
  • 如果你的代理需要认证,格式应该是:http://username:password@proxy.example.com:8080
相关推荐
专家大圣20 小时前
摆脱局域网束缚!Neko+cpolar 让跨网共享成日常
服务器·网络·docker·内网穿透·cpolar
Haooog21 小时前
Docker面试题(不定时更新)
java·docker·面试
树下水月21 小时前
docker 启动后 如何通过对应的进程 找docker-compose.yaml 编排文件
运维·docker·容器
凯子坚持 c1 天前
Docker 网络管理深度解析与实践指南
运维·docker·容器
kevin_水滴石穿1 天前
在镜像生成时从内网获取字体安装包并配置
linux·docker·容器
人生匆匆1 天前
部署使用rathole内网穿透
linux·运维·docker
LILR_1 天前
简单学docker
运维·docker·容器
喵爸的小作坊1 天前
StreamPanel:一个让 SSE 调试不再痛苦的 Chrome 插件
前端·后端·http
java_logo1 天前
Transmission Docker 容器化部署指南
运维·docker·容器·kubernetes·apache·rocketmq·transmission
♛识尔如昼♛1 天前
SONiC (5) - SONiC 的架构
docker·数据中心·sonic·lldp·sonic 架构