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

dnsMasq是一款轻量级网络服务工具,集成DNS转发、DHCP服务器、TFTP服务等功能。其设计简洁高效,资源占用低,可在小型网络环境中提供DNS解析、IP地址分配等核心网络服务,广泛应用于家庭网络、小型办公网络及开发测试环境。
*.local或*.test)到开发服务器IP,避免修改系统hosts文件通过Docker快速启动dnsMasq,使用默认配置提供DNS转发服务(默认上游DNS为8.8.8.8和8.8.4.4):
docker run -d --name dnsmasq --net=host --restart=always jpillora/dnsmasq
注意:使用
--net=host模式可让容器直接使用主机网络栈,确保DHCP服务正常工作(桥接模式下DHCP广播包可能被Docker网络隔离)
本地创建配置文件dnsmasq.conf(配置语法参考dnsMasq官方文档),示例配置:
# DNS配置 server=114.114.114.114 # 上游DNS服务器(国内公共DNS) server=114.114.115.115 address=/local/192.168.1.100 # 将所有.local域名解析到192.168.1.100 address=/router.local/192.168.1.1 # 解析router.local到网关IP # DHCP配置 dhcp-range=192.168.1.100,192.168.1.200,255.255.255.0,24h # IP地址池及租期 dhcp-option=3,192.168.1.1 # 网关地址 dhcp-option=6,192.168.1.1 # 客户端DNS服务器(指向dnsmasq自身) dhcp-host=aa:bb:cc:dd:ee:ff,192.168.1.50,server,365d # 绑定MAC地址到固定IP
启动容器并挂载配置文件:
docker run -d --name dnsmasq --net=host --restart=always \ -v /path/to/dnsmasq.conf:/etc/dnsmasq.conf \ -v /path/to/dnsmasq.leases:/var/lib/misc/dnsmasq.leases \ # 持久化DHCP租约记录 jpillora/dnsmasq
创建docker-compose.yml文件管理服务:
version: '3' services: dnsmasq: image: jpillora/dnsmasq container_name: dnsmasq network_mode: host restart: always volumes: - ./dnsmasq.conf:/etc/dnsmasq.conf:ro # 只读挂载配置文件 - ./dnsmasq.leases:/var/lib/misc/dnsmasq.leases # 持久化租约数据 # 可选:启用TFTP服务时暴露端口(非host模式下) # ports: # - "69:69/udp"
启动服务:
docker-compose up -d
| 参数 | 说明 |
|---|---|
server=<IP> | 配置上游DNS服务器,可多次配置(如server=8.8.8.8) |
address=/<domain>/<IP> | 定义本地域名解析规则(如address=/local/192.168.1.100解析所有.local域名到指定IP) |
dhcp-range=<start>,<end>,<mask>,<lease> | 配置DHCP地址池(如192.168.1.100,192.168.1.200,255.255.255.0,24h) |
dhcp-option=<code>,<value> | 设置DHCP选项(如dhcp-option=3,192.168.1.1指定网关,dhcp-option=6,8.8.8.8指定DNS) |
dhcp-host=<MAC>,<IP>,<name>,<lease> | 绑定MAC地址到固定IP(如dhcp-host=aa:bb:cc:dd:ee:ff,192.168.1.50,server,365d) |
enable-tftp | 启用TFTP服务 |
tftp-root=<path> | 设置TFTP服务根目录(需配合容器内路径挂载,如-v ./tftp:/tftpboot) |
| 环境变量 | 说明 | 默认值 |
|---|---|---|
DNSMASQ_USER | 运行dnsmasq的用户 | root |
DNSMASQ_DEBUG | 启用调试模式(1=开启) | 0 |
HTTP_USER | Web管理界面用户名(部分镜像支持) | admin |
HTTP_PASS | Web管理界面密码(部分镜像支持) | 随机生成(需查看容器日志) |
dig @localhost example.com # 通过本地dnsmasq解析域名
cat dnsmasq.leases # 查看持久化的DHCP租约记录
docker logs dnsmasq # 检查服务启动状态及错误信息
--net=host模式以确保功能正常;非host模式下需配置Docker网络为macvlan或ipvlan模式644)dnsmasq.leases)需挂载到宿主机目录,避免容器重启后丢失租约记录interface=<网卡>或listen-address=<IP>参数),避免作为开放DNS服务器被滥用免费版仅支持 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