方案一
启动时增加hosts,参考自docker docs
docker run -d --name test1 \
--add-host test1.a:1.2.3.4 \
local/test
方案二
docker-compose.yml文件指定,参考自stackoverflow
test2:
build: local/test
extra_hosts:
test1.a: 1.2.3.4
test1.b: 4.3.2.1
方案三
构建镜像时增加,参考自docker docs,这个本人测试失败,不可用。
docker build的--add-host参数只是为了在镜像构建时使用指定host,并不会保留到镜像中,这个设计是为了考虑该镜像的移植性,不与环境形成强相关
docker build \
--add-host test.abc:1.2.3.4 \
-t local/test \
错误示例一
Dockerfile修改hosts文件,类似如下操作
RUN echo '1.2.3.4 test.a' >> /etc/hosts
错误示例二
容器启动后修改/etc/hosts,仅本次启动有效,重启就还原