修改 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:[email protected]:8080
相关推荐
tonngw13 分钟前
【Mac 从 0 到 1 保姆级配置教程 16】- Docker 快速安装配置、常用命令以及实际项目演示
macos·docker·容器·开源·github·docker desktop·orbstack
debug 小菜鸟3 小时前
浏览器访问 AWS ECS 上部署的 Docker 容器(监听 80 端口)
docker·云计算·aws
SpikeKing3 小时前
Server - 使用 Docker 配置 PyTorch 研发环境
pytorch·docker·llm
斯普信云原生组4 小时前
Docker构建自定义的镜像
java·spring cloud·docker
小柏ぁ5 小时前
calico/node is not ready: BIRD is not ready: BGP not established with xxx
运维·docker·kubernetes
nuczzz9 小时前
GPU虚拟化
docker·kubernetes·k8s·gpu·nvidia
fengyehongWorld9 小时前
Linux Docker的简介
linux·docker
Johny_Zhao9 小时前
2025年6月Docker镜像加速失效终极解决方案
linux·网络·网络安全·docker·信息安全·kubernetes·云计算·containerd·yum源·系统运维
藥瓿亭11 小时前
K8S认证|CKS题库+答案| 7. Dockerfile 检测
运维·ubuntu·docker·云原生·容器·kubernetes·cks
栗子叶12 小时前
两种Https正向代理的实现原理
网络协议·http·https·正向代理