问题
最近使用k8s来部署spring-cloud服务,可以动态升级真的很方便,但是发现域名解析间断性地会失效。
解决办法
在容器的/etc/hosts中添加域名解析,利用ENTRYPOINT去执行脚本,在脚本中执行修改/etc/hosts的命令
因为用CMD或者RUN去修改hosts会在下一级镜像构造的时候被覆盖,所以要在ENTRYPOINT步骤去做
Dockerfile
FROM java:8-jre
ADD ./yourapp.jar /app/
COPY run.sh /
RUN chmod u+x run.sh
ENTRYPOINT ["./run.sh"]
run.sh
#!/bin/bash
echo -e "192.0.0.1 aaa.test.com\n192.0.0.2 bbb.test.com" >> /etc/hosts
java -Xms500m -Xmx500m -Xmn250m -Xss256k -server -XX:+HeapDumpOnOutOfMemoryError -jar /app/yourapp.jar \$1
EOF











网友评论