gpt4 book ai didi

docker - 在docker-compose中将当前本地ip传递给dnsmasq命令

转载 作者:行者123 更新时间:2023-12-02 19:57:37 25 4
gpt4 key购买 nike

建立

我有一个包含多个容器的安装程序,使用dnsmasq作为虚拟主机的名称服务器。我希望容器可以在本地网络中访问,因此我需要将所有请求解析为运行容器的计算机的当前本地ip(此处为192.168.178.21)

version: "3"

services:
dnsmasq:
image: andyshinn/dnsmasq
ports:
- 53:53/tcp
- 53:53/udp
cap_add:
- NET_ADMIN
command: [
"--log-queries",
"--log-facility=-",
"--address=/.test/192.168.178.21"
]

apache:
...

gulp:
...

nginx-proxy:
...

问题

我想做的是在启动docker-compose时动态地“添加”当前ip,在概念上像一个变量一样,获取当前ip:
...
"--address=/.test/current_local_ip"
...


这样,我可以在网络中的每台开发机器上使用此设置启动一个项目,并使其他人可以访问它,而无需手动更改docker-compose文件中的内容。谢谢你的建议

最佳答案

您可以使用.env文件并添加

env_file=.env
environment:
- IP_ADDR
并将命令修改为 "--address=/.test/$IP_ADDR"要么
像这样映射conf文件
    volumes:
- .docker/dnsmasq.conf:/etc/dnsmasq.conf

关于docker - 在docker-compose中将当前本地ip传递给dnsmasq命令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56816042/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com