云原生Docker容器自定义DNS解析的方法是什么

    描述

    • 在特定的情况下,或者在网络策略特殊定义下,需要自定义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

    云原生Docker容器自定义DNS解析的方法是什么

    docker build构建镜像时添加

    docker build --add-host=docker:10.180.0.1 .

    云原生Docker容器自定义DNS解析的方法是什么

    原创文章,作者:GVWSA,如若转载,请注明出处:http://www.wangzhanshi.com/n/11985.html

    (0)
    GVWSA的头像GVWSA
    上一篇 2025年1月1日 17:03:49
    下一篇 2025年1月1日 17:03:51

    相关推荐

    发表回复

    登录后才能评论