问题原因:任务流状态时,容器中在/etc/hosts中配置的域名不起作用(包括在任务模板中配置也同样失效)
解决方法:修改域名映射对应的有效文件。修改方式如下:
FROM ubuntu:14.04
RUN cp /etc/hosts /tmp/hosts #路径长度最好保持一致
RUN mkdir -p -- /lib-override && cp /lib/x86_64-linux-gnu/libnss_files.so.2 /lib-override
RUN sed -i 's:/etc/hosts:/tmp/hosts:g' /lib-override/libnss_files.so.2
ENV LD_LIBRARY_PATH /lib-override
RUN echo "192.168.0.1 node1" >> /tmp/hosts #可以随意修改/tmp/hosts了
其中,libnss_files.so.2在不同的系统中的位置有所变化,可通过如下命令查找替换:
find / -name libnss_files.so.2