dinghy-http-proxy Docker 镜像下载 - 轩辕镜像
dinghy-http-proxy 镜像详细信息和使用指南
dinghy-http-proxy 镜像标签列表和版本信息
dinghy-http-proxy 镜像拉取命令和加速下载
dinghy-http-proxy 镜像使用说明和配置指南
Docker 镜像加速服务 - 轩辕镜像平台
国内开发者首选的 Docker 镜像加速平台
极速拉取 Docker 镜像服务
相关 Docker 镜像推荐
热门 Docker 镜像下载
dinghy-http-proxy 镜像详细信息
dinghy-http-proxy 镜像标签列表
dinghy-http-proxy 镜像使用说明
dinghy-http-proxy 镜像拉取命令
Docker 镜像加速服务
轩辕镜像平台优势
镜像下载指南
相关 Docker 镜像推荐
dinghy-http-proxy 镜像详细说明
dinghy-http-proxy 使用指南
dinghy-http-proxy 配置说明
dinghy-http-proxy 官方文档
Dinghy HTTP Proxy
Dinghy HTTP Proxy 是 Dinghy 使用的HTTP代理和DNS服务器,基于 jwilder 的 nginx-proxy 项目修改,更适用于本地开发环境。同时集成DNS解析器,默认将所有 *.docker 域名解析到Docker虚拟机,支持自定义配置。
核心功能与特性
- 基于nginx-proxy:继承nginx-proxy的反向代理能力,自动配置Nginx以代理Docker容器
- DNS解析服务:内置DNS服务器,默认解析
*.docker域名,可通过环境变量自定义顶级域名 - 自动主机名生成:Docker Compose项目自动生成
<service>.<project>.<tld>格式主机名 - 灵活的主机名配置:支持显式设置虚拟主机(多主机、通配符主机、正则表达式匹配)
- CORS支持:通过环境变量快速启用跨域资源共享
- 子域名自动支持:Docker Compose项目自动支持子域名访问,也可手动配置
- SSL支持:通过证书文件实现单主机SSL,支持HTTPS重定向配置
使用场景
适用于本地Docker开发环境,特别是需要同时运行多个项目、通过自定义域名访问容器、需要SSL加密或跨域资源共享的场景。简化本地开发中Docker容器的网络访问配置,无需手动修改hosts文件或端口映射。
配置与使用方法
暴露端口配置
代理默认使用容器暴露的第一个端口作为HTTP代理目标端口,可通过设置容器的 VIRTUAL_PORT 环境变量指定目标端口。
Docker Compose项目自动主机名
代理会基于Docker Compose为容器添加的标签自动生成主机名,格式为 <service>.<project>.<tld>。例如,默认 *.docker 顶级域名下,"myapp"项目中的"web"服务可通过 [***] 访问。
显式设置主机名
通过为容器设置 VIRTUAL_HOST 环境变量(可通过 docker run -e 或docker-compose的 environment 配置)指定主机名,覆盖自动生成的主机名。
多主机配置
支持多个虚拟主机,用逗号分隔,例如 VIRTUAL_HOST=foo.bar.com,baz.bar.com,bar.com,每个主机配置相同。还可指定端口:foo.bar.com,baz.bar.com:3000,未指定端口的主机使用默认端口。
通配符与正则表达式主机
支持前缀/后缀通配符(如 *.bar.com 或 foo.bar.*)及正则表达式(以 ~ 开头)。例如 ~^foo\.bar\..*\.xip\.io 可匹配 foo.bar.127.0.0.1.xip.io 等域名(需配合xip.io等 wildcard DNS服务)。更多说明见 nginx server_names文档。
启用CORS
为容器设置 CORS_ENABLED=true 环境变量,允许代理接受跨域请求。
子域名支持
在主机名前添加 . 前缀,使容器同时支持所有子域名访问。例如 VIRTUAL_HOST=.myrailsapp.docker 可使应用同时通过 *.myrailsapp.docker 访问。Docker Compose自动生成的主机名默认支持此功能。
SSL支持
证书配置
将SSL证书和私钥放置在 HOME/.dinghy/certs 目录,文件名需与虚拟主机名对应,扩展名为 .crt(证书)和 .key(私钥)。例如 VIRTUAL_HOST=foo.bar.com.docker 需对应 foo.bar.com.docker.crt 和 foo.bar.com.docker.key。
SSL工作原理
- ** cipher配置**:基于Mozilla Nginx中间配置文件,兼容Firefox 1+、Chrome 1+、IE 7+等客户端,启用HSTS和SSL会话缓存
- 默认行为:若容器有可用证书,80端口会重定向到443端口;无证书则使用80端口
- HTTPS_METHOD环境变量:控制HTTPS行为
HTTPS_METHOD=redirect(默认):80端口重定向到443HTTPS_METHOD=noredirect:同时支持80和443,不重定向HTTPS_METHOD=nohttp:仅支持443,禁用80端口
生成自签名证书
使用 openssl 生成自签名证书:
bashopenssl req -x509 -newkey rsa:2048 -keyout foo.bar.com.docker.key \ -out foo.bar.com.docker.crt -days 365 -nodes \ -subj "/C=US/ST=Oregon/L=Portland/O=Company Name/OU=Org/CN=foo.bar.com.docker" \ -config <(cat /etc/ssl/openssl.cnf <(printf "[SAN]\nsubjectAltName=DNS:foo.bar.com.docker")) \ -reqexts SAN -extensions SAN
生成后需安装到系统信任证书库以避免浏览器警告。
在Dinghy之外使用
支持独立运行,通过环境变量自定义配置:
DOMAIN_TLD:默认docker,DNS服务器解析的顶级域名DNS_IP:默认127.0.0.1,DNS解析目标IP
OS X系统部署
-
获取Docker VM IP:
- docker-machine:
docker-machine ip <machine_name> - Docker for Mac:使用
127.0.0.1
- docker-machine:
-
启动代理容器:
bashdocker run -d --restart=always \ -v /var/run/docker.sock:/tmp/docker.sock:ro \ -v ~/.dinghy/certs:/etc/nginx/certs \ -p 80:80 -p 443:443 -p ***:***/udp \ -e DNS_IP=<vm_ip> -e CONTAINER_NAME=http-proxy \ --name http-proxy \ codekitchen/dinghy-http-proxy
- 配置DNS解析:创建
/etc/resolver/docker文件(需先创建/etc/resolver目录):
nameserver <vm_ip> port ***
Linux系统部署
直接在Linux主机运行Docker时:
bashdocker run -d --restart=always \ -v /var/run/docker.sock:/tmp/docker.sock:ro \ -v ~/.dinghy/certs:/etc/nginx/certs \ -p 80:80 -p 443:443 -p ***:***/udp \ -e CONTAINER_NAME=http-proxy \ --name http-proxy \ codekitchen/dinghy-http-proxy
DNS配置需根据Linux发行版调整,可参考 Dory 项目。
Windows系统部署
Docker for Windows使用 127.0.0.1 作为DNS IP:
Powershell命令:
powershelldocker run -d --restart=always ` -v /var/run/docker.sock:/tmp/docker.sock:ro ` -p 80:80 -p 443:443 -p ***:***/udp ` -e CONTAINER_NAME=http-proxy ` -e DNS_IP=127.0.0.1 ` --name http-proxy ` codekitchen/dinghy-http-proxy
docker-compose配置:
yamlversion: '2' services: http-proxy: container_name: http-proxy image: codekitchen/dinghy-http-proxy environment: - DNS_IP=127.0.0.1 - CONTAINER_NAME=http-proxy ports: - "80:80" - "443:443" - "***:***/udp" volumes: - /var/run/docker.sock:/tmp/docker.sock:ro
需手动添加主机到 C:\Windows\System32\drivers\etc\hosts,可使用Powershell脚本辅助管理(如 Carbon 或 相关Gist)。
用户好评
来自真实用户的反馈,见证轩辕镜像的优质服务
常见问题
免费版仅支持 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 登录认证访问私有仓库
Linux
在 Linux 系统配置镜像加速服务
Windows/Mac
在 Docker Desktop 配置镜像加速
Docker Compose
Docker Compose 项目配置加速
K8s Containerd
Kubernetes 集群配置 Containerd
宝塔面板
在宝塔面板一键配置镜像加速
群晖
Synology 群晖 NAS 配置加速
飞牛
飞牛 fnOS 系统配置镜像加速
极空间
极空间 NAS 系统配置加速服务
爱快路由
爱快 iKuai 路由系统配置加速
绿联
绿联 NAS 系统配置镜像加速
威联通
QNAP 威联通 NAS 配置加速
Podman
Podman 容器引擎配置加速
Singularity/Apptainer
HPC 科学计算容器配置加速
其他仓库配置
ghcr、Quay、nvcr 等镜像仓库
专属域名拉取
无需登录使用专属域名加速
需要其他帮助?请查看我们的 常见问题 或 官方QQ群: 13763429