gpt4 book ai didi

docker - 是否可以为 `docker build` 设置 MAC 地址?

转载 作者:IT老高 更新时间:2023-10-28 21:35:03 27 4
gpt4 key购买 nike

使用 docker run,可以使用 --mac-address 选项修复 MAC 地址。我查过,找不到使用 docker build 修复 MAC 地址的方法。我想要将许可证固定到 MAC 地址的软件进行 docker 化(我不是想绕过许可证;我想拥有一个更可重现的系统架构)。

谢谢!

最佳答案

让我们考虑下面的 Dockerfile

FROM alpine
RUN ifconfig | grep -i hwaddr

如果你使用构建它

docker build .

你得到

Sending build context to Docker daemon  2.048kB
Step 1/2 : FROM alpine
---> 7328f6f8b418
Step 2/2 : RUN ifconfig | grep -i hwaddr
---> Running in c092838dbe31
eth0 Link encap:Ethernet HWaddr 02:42:AC:11:00:02
Removing intermediate container c092838dbe31
---> 7038787f51b8

现在我们不能控制 docker build 的 Mac 地址,但是我们可以控制 build 的网络,我们可以控制一个容器的 mac 地址。所以让我们用我们的mac地址启动一个容器

$ docker run --name mac1234deb06b61 --mac-address="12:34:de:b0:6b:61" -d alpine tail -f /dev/null
c3579e4685933b757f51c5f9e36d620dbe3a62abd0e0d6a421b5f1c04045061c

$ docker build --network container:mac1234deb06b61 --no-cache .
Sending build context to Docker daemon 2.048kB
Step 1/2 : FROM alpine
---> 7328f6f8b418
Step 2/2 : RUN ifconfig | grep -i hwaddr
---> Running in 4390f13cbe8f
eth0 Link encap:Ethernet HWaddr 12:34:DE:B0:6B:61
Removing intermediate container 4390f13cbe8f
---> b0b5f7321921
Successfully built b0b5f7321921

如您所见,现在 docker build 采用更新后的 mac 地址

关于docker - 是否可以为 `docker build` 设置 MAC 地址?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48675505/

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