收起左侧

在飞牛的 Docker Compose 中配置代理

2
回复
1997
查看
[ 复制链接 ]

1

主题

35

回帖

0

牛值

fnOS系统内测组

2025-2-11 16:32:26 显示全部楼层 阅读模式

我的 docker 都是用 compose 来创建的 ,对于一些容器需要访问代理的,比如 telethon,那么就需要单独给配置一下。

通过 docker-compose.yml 文件配置代理是更加高效和简洁的方法。当你的应用由多个服务组成,并且这些服务都需要统一的代理配置时,这种方式可以大大简化操作。

假设你有一个多服务应用,并希望为其中的服务统一配置代理,你可以在 docker-compose.yml 文件中添加如下内容:

version: '3' services: app: image: your_image_name environment: - HTTP_PROXY=http://192.168.1.140:7890 - HTTPS_PROXY=http://192.168.1.140:7890

在这里,environment 字段用于指定环境变量:

  • 你可以为每个服务分别配置代理,这样在启动容器时,这些服务就会自动应用代理设置。
  • 这种方法在微服务架构中尤为有效,特别是当多个服务需要一致的网络访问策略时,通过 docker-compose.yml 文件集中管理可以减少重复配置的麻烦。

此外,如果你的 docker-compose.yml 文件中包含多个服务,你可以为每个服务单独配置代理,或者仅为需要的服务配置代理。例如:

version: '3'
services:
app1:
image: image1
environment:
- HTTP_PROXY=http://192.168.1.140:7890
- HTTPS_PROXY=http://192.168.1.140:7890

app2:
image: image2
environment:
# app2 没有配置代理`

此时,只有 app1 服务会通过代理访问网络,而 app2 服务则不受代理影响。这种灵活性使得 Docker Compose 成为管理多容器应用的得力工具。

收藏
送赞 4
分享

2

主题

9

回帖

0

牛值

fnOS系统内测组

飞牛百度网盘玩家

2025-3-10 11:27:47 显示全部楼层
代理有密码的怎么添加?
[md]``` version: '3' services: app1: image: image1 environment: - HTTP_PROXY=http://your_username:your_password@192.168.1.140:7890 - HTTPS_PROXY=http://your_username:your_passwor  详情 回复
2025-3-17 20:28

1

主题

35

回帖

0

牛值

fnOS系统内测组

2025-3-17 20:28:10 楼主 显示全部楼层

<br /> <br />

version: '3'
services:
  app1:
    image: image1
    environment:
      - HTTP_PROXY=http://your_username:your_password@192.168.1.140:7890
      - HTTPS_PROXY=http://your_username:your_password@192.168.1.140:7890

  app2:
    image: image2
    environment:
      # app2 没有配置代理  

配置代理的账户密码,可以参考这个配置

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则