云原生Docker容器自定义DNS解析

本站所有内容来自互联网收集,仅供学习和交流,请勿用于商业用途。如有侵权、不妥之处,请第一时间联系我们删除!Q群:迪思分享

免费资源网 – https://freexyz.cn/
目录描述实现方式docker-compose配置【推荐】进入容器内部修改docker run 命令的时候添加docker build构建镜像时添加结尾总结 

描述

在特定的情况下,或者在网络策略特殊定义下,需要自定义dns进行域名访问,在宿主机上配置了域名解析,对于docker容器无效。对于局域网内的域名解析,Docker 需要到 Docker 容器中配置 hosts 文件

实现方式

docker-compose配置【推荐】

通过增加 extra_hosts 属性 进行host配置

version: 2 services: # 指定服务名称 portainer-docker-compose: image: portainer/portainer container_name: portainer volumes: – /etc/localtime:/etc/localtime ports: – 29999:8080 environment: spring.profiles.active: dev extra_hosts: s3-qos.qiniu-solutions.com: 10.12.32.4 demos.s3-qos.iot-st-armtest.qiniu-solutions.com: 10.12.32.4 restart: always

进入容器内部修改

进入容器

docker exec -it 0485008fc3e5 /bin/sh

修改容器内的hosts

cat /etc/hosts

云原生Docker容器自定义DNS解析插图

docker run 命令的时候添加

进行dns映射:s3-qos.qiniu-solutions.com:10.12.32.4

docker run -d -p 9000:9000 –restart=always –add-host s3-qos.qiniu-solutions.com:10.12.32.4 -v /var/run/docker.sock:/var/run/docker.sock –name portainer portainer/portainer

官方文档:https://docs.docker.com/engine/reference/commandline/run/

云原生Docker容器自定义DNS解析插图1

docker build构建镜像时添加

docker build –add-host=docker:10.180.0.1 .

官方文档:https://docs.docker.com/engine/reference/commandline/build/#add-host

云原生Docker容器自定义DNS解析插图2

结尾

如果是单机推荐大家采用docker-compose的方式进行编排【开发测试环境】,生产环境可以采用k8s进行编排。官方文档:https://kubernetes.io/zh-cn/docs/tasks/network/customize-hosts-file-for-pods/

总结 

免费资源网 – https://freexyz.cn/


© 版权声明
THE END
★喜欢这篇文章吗?喜欢的话,麻烦动动手指支持一下!★
点赞7 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容