本站支持搜索的镜像仓库:Docker Hub、gcr.io、ghcr.io、quay.io、k8s.gcr.io、registry.gcr.io、elastic.co、mcr.microsoft.com

bind9-docker 是一个基于 BIND9 (Berkeley Internet Name Domain) 的 Docker 镜像,提供了轻量级、可移植的 DNS 服务器解决方案。BIND9 是互联网上使用最广泛的 DNS 服务器软件之一,支持 DNSSEC、动态更新、区域传输等高级功能。该镜像旨在简化 BIND9 的部署和管理流程,适用于开发环境、测试环境以及小型生产环境的 DNS 服务需求。
使用默认配置启动 DNS 服务器:
docker run -d --name bind9 -p 53:53/tcp -p 53:53/udp bratkartoffel/bind9
使用外部配置文件启动:
docker run -d --name bind9 \ -p 53:53/tcp -p 53:53/udp \ -v /path/to/named.conf:/etc/bind/named.conf \ -v /path/to/zones:/etc/bind/zones \ bratkartoffel/bind9
| 环境变量 | 默认值 | 描述 |
|---|---|---|
TZ | UTC | 设置时区,例如 Europe/Berlin |
DNS_FORWARDERS | 8.8.8.8; 8.8.4.4 | 上游 DNS 转发器,多个用分号分隔 |
ALLOW_QUERY | any | 允许查询的客户端地址范围 |
LISTEN_ON | any | 监听的网络接口 |
ROOT_HINTS | true | 是否使用根提示文件 |
容器内部主要目录结构:
/etc/bind/: BIND9 配置文件目录
named.conf: 主配置文件named.conf.options: 全局选项配置named.conf.local: 本地区域配置/var/cache/bind/: 缓存和区域文件目录/var/log/bind/: 日志文件目录为确保配置和数据持久化,建议挂载以下目录:
-v /host/path/config:/etc/bind -v /host/path/cache:/var/cache/bind -v /host/path/log:/var/log/bind
version: '3' services: bind9: image: bratkartoffel/bind9 container_name: bind9 restart: always ports: - "53:53/tcp" - "53:53/udp" environment: - TZ=Asia/Shanghai - DNS_FORWARDERS=114.114.114.114; 119.29.29.29 - ALLOW_QUERY=192.168.0.0/24; 10.0.0.0/8 volumes: - ./config:/etc/bind - ./cache:/var/cache/bind - ./log:/var/log/bind networks: - dns-network networks: dns-network: driver: bridge
version: '3' services: bind9: image: bratkartoffel/bind9 container_name: bind9 restart: always ports: - "53:53/tcp" - "53:53/udp" environment: - TZ=UTC volumes: - ./named.conf:/etc/bind/named.conf - ./zones:/etc/bind/zones - ./cache:/var/cache/bind - ./log:/var/log/bind cap_add: - NET_ADMIN
zones/db.example.com:$TTL 86400 @ IN SOA ns1.example.com. admin.example.com. ( 2023010101 ; Serial 3600 ; Refresh 1800 ; Retry 604800 ; Expire 86400 ; Minimum TTL ) @ IN NS ns1.example.com. ns1 IN A 192.168.1.100 www IN A 192.168.1.101 mail IN A 192.168.1.102
named.conf.local 中添加区域配置:zone "example.com" { type master; file "/etc/bind/zones/db.example.com"; };
docker restart bind9
docker exec -it bind9 tail -f /var/log/bind/query.log
docker exec -it bind9 named-checkconf docker exec -it bind9 named-checkzone example.com /etc/bind/zones/db.example.com
ALLOW_QUERY 范围,避免将 DNS 服务器暴露给公网若启动时提示端口已被占用,检查宿主机是否已有服务占用 53 端口:
sudo lsof -i :53
查看容器日志排查配置问题:
docker logs bind9
确保容器网络配置正确,测试 DNS 解析:
nslookup example.com <容器IP>
免费版仅支持 Docker Hub 加速,不承诺可用性和速度;专业版支持更多镜像源,保证可用性和稳定速度,提供优先客服响应。
免费版仅支持 docker.io;专业版支持 docker.io、gcr.io、ghcr.io、registry.k8s.io、nvcr.io、quay.io、mcr.microsoft.com、docker.elastic.co 等。
当返回 402 Payment Required 错误时,表示流量已耗尽,需要充值流量包以恢复服务。
通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。
先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。
使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。
探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录方式配置轩辕镜像加速服务,包含7个详细步骤
在 Linux 系统上配置轩辕镜像源,支持主流发行版
在 Docker Desktop 中配置轩辕镜像加速,适用于桌面系统
在 Docker Compose 中使用轩辕镜像加速,支持容器编排
在 k8s 中配置 containerd 使用轩辕镜像加速
在宝塔面板中配置轩辕镜像加速,提升服务器管理效率
在 Synology 群晖NAS系统中配置轩辕镜像加速
在飞牛fnOS系统中配置轩辕镜像加速
在极空间NAS中配置轩辕镜像加速
在爱快ikuai系统中配置轩辕镜像加速
在绿联NAS系统中配置轩辕镜像加速
在威联通NAS系统中配置轩辕镜像加速
在 Podman 中配置轩辕镜像加速,支持多系统
配置轩辕镜像加速9大主流镜像仓库,包含详细配置步骤
无需登录即可使用轩辕镜像加速服务,更加便捷高效
需要其他帮助?请查看我们的 常见问题 或 官方QQ群: 13763429