gpt4 book ai didi

linux - Docker容器mac地址变化

转载 作者:行者123 更新时间:2023-12-04 19:35:33 36 4
gpt4 key购买 nike

我有一个使用 MAC 地址进行许可的应用程序。为了 CI/CD 的目的,我想在 docker 容器中运行这个应用程序。我创建了一个 docker 容器并使用 ENTRYPOINT运行 shell 脚本。我现在遇到的问题是,当我尝试 ping 任何服务器时,都会出现网络错误。我想知道这是我可以解决的问题,还是我做错了。我很想为此找到一个解决方案,这样我就可以在将它们投入生产之前测试我为这个系统编写的脚本。我会在附近回答任何其他问题。
Dockerfile

FROM centos:latest
COPY startup.sh /startup.sh
ENTRYPOINT ["/bin/sh", "/startup.sh"]
启动.sh
ip link set dev eth0 down;
ip link set dev eth0 address 02:42:ac:11:00:11;
ip link set dev eth0 up;
错误
sh-4.4# ip link
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: sit0@NONE: <NOARP> mtu 1480 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/sit 0.0.0.0 brd 0.0.0.0
29: eth0@if30: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP mode DEFAULT group default
link/ether 02:42:ac:11:00:11 brd ff:ff:ff:ff:ff:ff link-netnsid 0

sh-4.4# ping google.com
ping: google.com: Name or service not known

sh-4.4# ping 4.4.4.4
connect: Network is unreachable

最佳答案

如果您需要像这样覆盖低级网络细节,通常应该在 Docker 级别进行。例如,有一个 docker run --mac-address option您可以在启动容器时指定。您不需要运行 ip , ifconfig ,或容器启动序列中的类似网络管理命令;这完全由 Docker 处理。

docker run --mac-address 02:42:ac:11:00:11 ...

关于linux - Docker容器mac地址变化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67290370/

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