
xkand/dind 镜像基于 "Docker in Docker"(简称 dind)技术实现,允许在容器内部运行完整的 Docker 引擎。通过该镜像,用户可在隔离的容器环境中执行 Docker 命令(如构建镜像、运行容器、管理容器网络等),无需依赖宿主机的 Docker 环境。
提供独立的 Docker 运行时环境,适用于需要在容器内嵌套运行 Docker 的场景,如 CI/CD 流水线、开发环境隔离、测试环境快速部署等。
daemon.json 文件,自定义 Docker 引擎配置(如镜像加速、存储驱动等)。privileged: true)启动,确保容器内 Docker 引擎正常访问宿主机内核资源。host 和 bridge 两种网络模式,适应不同网络隔离需求。tty 和 stdin_open,支持交互式操作容器内环境。overlay2 存储驱动)。通过 docker-compose.yml 配置文件可快速部署,支持自定义参数。以下为完整配置示例及说明:
yamlversion: '3' services: dind: image: xkand/dind:latest # 使用最新版本镜像 container_name: dind # 容器名称,可自定义 restart: always # 容器退出后自动重启 tty: true # 启用终端支持 stdin_open: true # 保持标准输入打开,支持交互式操作 privileged: true # 必须开启特权模式,确保 Docker 引擎正常运行 volumes: # 持久化 Docker 数据(镜像、容器、卷等),映射宿主机 ./data 目录到容器 /var/lib/docker - ./data:/var/lib/docker # 映射宿主机自定义 daemon.json 到容器,配置 Docker 引擎(如镜像加速、日志驱动等) - ./daemon.json:/etc/docker/daemon.json # 映射宿主机 ./docker 目录到容器 /root/docker,用于存放用户自定义脚本或配置 - ./docker:/root/docker # 网络模式:可选 host 或 bridge(二选一) network_mode: host # host 模式:容器共享宿主机网络,无需端口映射 # bridge 模式:需手动映射端口(右侧端口需与环境变量 SSH_PORT 一致) # ports: # - "32321:32321" # 例如:宿主机 32321 端口映射到容器 SSH 端口 environment: - ROOT_PASSWORD=123456 # SSH 登录密码,默认值:无(建议显式设置) - SSH_PORT=32321 # SSH 服务端口,默认值:32321(自定义时需同步端口映射) # 可选:如需支持 GPU 资源(如容器内运行 GPU 镜像),添加设备映射 # devices: # - /dev/dri:/dev/dri # 映射 GPU 设备(需宿主机支持)
部署步骤:
docker-compose.yml 文件,复制上述配置并根据需求修改参数(如密码、端口、卷路径)。bashdocker-compose up -d # 后台启动服务
如需快速启动,可直接使用 docker run 命令,示例如下(参数与 Compose 配置对应):
bashdocker run -d \ --name dind \ --restart always \ -t \ -i \ --privileged \ -v ./data:/var/lib/docker \ -v ./daemon.json:/etc/docker/daemon.json \ -v ./docker:/root/docker \ --network host \ -e ROOT_PASSWORD=123456 \ -e SSH_PORT=32321 \ xkand/dind:latest
说明:
-t -i 对应 Compose 中的 tty: true 和 stdin_open: true。--privileged 必须添加,否则容器内 Docker 引擎无法启动。bridge 网络模式,替换 --network host 为 -p 32321:32321(端口需与 SSH_PORT 一致)。| 参数名 | 描述 | 默认值 | 必要性 |
|---|---|---|---|
ROOT_PASSWORD | SSH 服务的 root 用户密码 | 无 | 建议显式设置 |
SSH_PORT | SSH 服务监听端口 | 32321 | 可选,默认 32321 |
| 宿主机路径 | 容器路径 | 作用说明 |
|---|---|---|
./data | /var/lib/docker | 持久化 Docker 引擎数据(镜像、容器、卷、网络配置等),避免容器重启后数据丢失。 |
./daemon.json | /etc/docker/daemon.json | 自定义 Docker 引擎配置(如 registry-mirrors 镜像加速、log-driver 日志驱动等)。 |
./docker | /root/docker | 可选,用于存放用户自定义脚本、配置文件等,方便在容器内访问。 |
-p <宿主机端口>:<容器端口> 映射 SSH 端口,且容器端口需与 SSH_PORT 一致(如 32321:32321)。优势:网络隔离性好;劣势:需手动配置端口映射。privileged: true:必须开启,Docker 引擎运行依赖宿主机内核资源(如 cgroup、设备访问等),特权模式允许容器访问宿主机所有设备。restart: always:确保容器异常退出后自动重启,提高可用性(根据需求可调整为 on-failure 等策略)。tty: true 与 stdin_open: true:支持通过 docker exec -it dind /bin/bash 进入容器交互式操作。daemon.json 时,需确保配置格式正确(JSON 语法),否则 Docker 引擎可能启动失败。./data 目录包含关键数据,建议定期备份,避免数据丢失。您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。




探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录认证访问私有仓库
无需登录使用专属域名
Kubernetes 集群配置 Containerd
K3s 轻量级 Kubernetes 镜像加速
VS Code Dev Containers 配置
Podman 容器引擎配置
HPC 科学计算容器配置
ghcr、Quay、nvcr 等镜像仓库
Harbor Proxy Repository 对接专属域名
Portainer Registries 加速拉取
Nexus3 Docker Proxy 内网缓存
需要其他帮助?请查看我们的 常见问题Docker 镜像访问常见问题解答 或 提交工单
docker search 限制
站内搜不到镜像
离线 save/load
插件要用 plugin install
WSL 拉取慢
安全与 digest
新手拉取配置
镜像合规机制
manifest unknown
no matching manifest(架构)
invalid tar header(解压)
TLS 证书失败
DNS 超时
域名连通性排查
410 Gone 排查
402 与流量用尽
401 认证失败
429 限流
D-Bus 凭证提示
413 与超大单层
来自真实用户的反馈,见证轩辕镜像的优质服务