使用 Docker 安装
DANGER
管理容器文件时,面板会自动创建 dpanel-plugin-explorer 容器进行权限隔离。 该容器使用 alpine 镜像,不暴露任何端口,关闭访问页面后自动销毁。 你也可以 手动创建,容器名称需保持为 dpanel-plugin-explorer。 如无法接受自动创建,请勿使用【文件管理】功能。
🚀🚀🚀 使用安装脚本可快速安装、升级 DPanel 面板
镜像地址
TIP
根据实际的版本需求及网络环境,选择镜像地址替换示例中的镜像地址
基于 Alpine 镜像
dpanel/dpanel:latestdpanel/dpanel:literegistry.cn-hangzhou.aliyuncs.com/dpanel/dpanel:latestregistry.cn-hangzhou.aliyuncs.com/dpanel/dpanel:lite基于 Debian 镜像
dpanel/dpanel:latest-debiandpanel/dpanel:lite-debianregistry.cn-hangzhou.aliyuncs.com/dpanel/dpanel:latest-debianregistry.cn-hangzhou.aliyuncs.com/dpanel/dpanel:lite-debian标准版
WARNING
后续命令演示均以【标准版】为例,请根据实际安装的版本替换参数及镜像地址。
标准版提供域名绑定及证书功能,需要映射 80 及 443 端口。如不需要这些功能,请使用 Lite 版。 Lite 版与标准版仅镜像地址不同,除无需映射 80 及 443 端口外,其余配置一致。
docker run -d --name dpanel --restart=always \
-p 80:80 -p 443:443 -p 8807:8080 -e APP_NAME=dpanel \
-v /var/run/docker.sock:/var/run/docker.sock \
-v /home/dpanel:/dpanel dpanel/dpanel:latestLite 版
docker run -d --name dpanel --restart=always \
-p 8807:8080 -e APP_NAME=dpanel \
-v /var/run/docker.sock:/var/run/docker.sock \
-v /home/dpanel:/dpanel dpanel/dpanel:litePodman
Podman 与 Docker 命令兼容,将创建命令中的 docker 替换为 podman 即可:
podman run -d --name dpanel --restart=always \
-p 80:80 -p 443:443 -p 8807:8080 -e APP_NAME=dpanel \
-v /run/podman/podman.sock:/var/run/docker.sock \
-v /home/dpanel:/dpanel dpanel/dpanel:latestRootless
Podman 支持在非 root 用户下管理容器。创建面板容器前,需先激活普通用户的 podman.sock 会话:
systemctl --user enable --now podman.socket将用户的 podman.sock 文件映射到面板容器的 /var/run/docker.sock 文件
podman run -d --name dpanel --restart=always \
-p 80:80 -p 443:443 -p 8807:8080 -e APP_NAME=dpanel \
-v /run/user/1000/podman/podman.sock:/var/run/docker.sock \
-v /home/dpanel:/dpanel dpanel/dpanel:latestDocker Desktop (Windows / Macos)
通过 //var/run/docker.sock 挂载 docker.sock 文件:
docker run -d --name dpanel --restart=always \
-p 80:80 -p 443:443 -p 8807:8080 -e APP_NAME=dpanel \
-v //var/run/docker.sock:/var/run/docker.sock // \
-v D:\data\dpanel:/dpanel dpanel/dpanel:latest docker run -d --name dpanel --restart=always \
-p 80:80 -p 443:443 -p 8807:8080 -e APP_NAME=dpanel \
-v //var/run/docker.sock:/var/run/docker.sock // \
-v /home/dpanel:/dpanel dpanel/dpanel:latest使用 Docker Tcp 管理
使用 Docker Tcp 时,创建面板容器无需挂载 /var/run/docker.sock 文件,通过 DOCKER_HOST 环境变量指定接口地址即可。
TIP
通过 --add-host 将宿主机 IP 绑定到容器,否则需使用宿主机在局域网内的 IP。
docker run -d --name dpanel --restart=always \
-p 80:80 -p 443:443 -p 8807:8080 -e APP_NAME=dpanel \
--add-host=host.dpanel.local:host-gateway \
-e DOCKER_HOST=tcp://host.dpanel.local:2375 \
-v /home/dpanel dpanel/dpanel:latest自定义面板管理端口
使用默认命令安装后,通过 http://127.0.0.1:8807 访问面板。可自定义 8080 端口的对外映射端口:
docker run -d --name dpanel --restart=always \
-p 80:80 -p 443:443 -p 2456:8080 -e APP_NAME=dpanel \
-v /var/run/docker.sock:/var/run/docker.sock \
-v /home/dpanel:/dpanel dpanel/dpanel:latest使用主机网络 --network host
使用主机网络时,默认通过 http://hostip:8080 访问面板。如需更改端口,添加环境变量 APP_SERVER_PORT=2456。 需确保主机端口未被占用(标准版还包含 80 及 443 端口)。
WARNING
使用主机网络时,添加容器域名转发时只能通过 IP:PORT 的形式
docker run -d --name dpanel --restart=always \
-e APP_NAME=dpanel -e APP_SERVER_PORT=2456 --network host \
-v /var/run/docker.sock:/var/run/docker.sock \
-v /home/dpanel:/dpanel dpanel/dpanel:latest配置面板代理
创建面板时通过环境变量配置容器内代理地址。 如代理地址为宿主机,请勿使用 127.0.0.1 或 localhost(这些地址指向容器本身),应使用宿主机局域网地址:
docker run -d --name dpanel --restart=always \
-p 80:80 -p 443:443 -p 8807:8080 -e APP_NAME=dpanel \
-e HTTP_PROXY="http://192.168.1.5:7890" \
-e HTTPS_PROXY="http://192.168.1.5:7890" \
-v /var/run/docker.sock:/var/run/docker.sock \
-v /home/dpanel:/dpanel dpanel/dpanel:latest自定义面板密钥文件 DPanel Version >= 1.8.1
面板使用 RSA 算法进行登录验证及 SSH 相关功能,启动时自动生成 RSA 公/私钥文件(仅当文件不存在时),位于 /dpanel/cert/rsa 目录。
也可将本机的 ~/.ssh/id_rsa、~/.ssh/id_rsa.pub 文件挂载到面板容器。 添加 SSH 权限时选择【使用面板密钥】,容器即可直接使用宿主机权限,实现权限的统一管理及快速更新:
docker run -d --name dpanel --restart=always \
-p 80:80 -p 443:443 -p 8807:8080 -e APP_NAME=dpanel \
-v /home/test/.ssh/id_rsa:/dpanel/cert/rsa/id_rsa \
-v /home/test/.ssh/id_rsa.pub:/dpanel/cert/rsa/id_rsa.pub \
-v /var/run/docker.sock:/var/run/docker.sock \
-v /home/dpanel:/dpanel dpanel/dpanel:latest自定义宿主机目录存储
TIP
如果需要挂载 compose yaml 文件或是在 compose yaml 中使用相对路径,请务必将挂载 /dpanel 目录到宿主机。添加 compose 任务查看 通过挂载存储路径的方式创建
面板运行时产生的数据存储在容器内的 /dpanel 目录中。创建时如未挂载该目录,Docker 会自动挂载到存储卷。 可自定义容器内 /dpanel 目录的宿主机挂载路径(需使用绝对路径):
docker run -d --name dpanel --restart=always \
-p 80:80 -p 443:443 -p 8807:8080 -e APP_NAME=dpanel \
-v /var/run/docker.sock:/var/run/docker.sock \
-v /home/test/dpanel:/dpanel dpanel/dpanel:latest 配置面板管理员用户名密码
创建面板容器后,首次进入需要先配置管理员用户和密码。忘记密码时可重置用户名密码
自定义面板容器名称
如需更改面板容器名称或同时安装多个面板,可通过 APP_NAME 环境变量配置:
docker run -d --restart=always \
--name dpanel-test -e APP_NAME=dpanel-test \
-p 80:80 -p 443:443 -p 8807:8080 \
-v /var/run/docker.sock:/var/run/docker.sock \
-v /home/dpanel:/dpanel dpanel/dpanel:latest自定义面板访问二级目录
默认情况下面板访问地址为 http://127.0.0.1:8807/dpanel/ui,你可以通过配置环境变量 DP_SYSTEM_BASEURL 指定二级访问目录为 http://127.0.0.1:8807/apps/dpanel/ui。
WARNING
自定义目录时,需要尽量避免包含 /dpanel、/ws/common、/api 防止重复替换导致路径错误
docker run -d --restart=always \
--name dpanel
-e DP_SYSTEM_BASEURL=/apps \
-p 80:80 -p 443:443 -p 8807:8080 \
-v /var/run/docker.sock:/var/run/docker.sock \
-v /home/dpanel:/dpanel dpanel/dpanel:latest绑定宿主机 host
容器内访问 127.0.0.1 或 localhost 指向容器本身。
访问宿主机时,需使用宿主机在局域网内的地址或注入的宿主机地址 host.dpanel.local:
docker run -d --name dpanel --restart=always \
-p 80:80 -p 443:443 -p 8807:8080 -e APP_NAME=dpanel \
--add-host=host.dpanel.local:host-gateway \
-v /var/run/docker.sock:/var/run/docker.sock \
-v /home/dpanel:/dpanel dpanel/dpanel:latest切割日志文件
面板将警告及以上级别的日志写入 /dpanel/logs/ 目录,运行时日志由 Docker 管理。 为避免日志文件过大,可配置容器日志切割:
docker run -d --name dpanel --restart=always \
-p 80:80 -p 443:443 -p 8807:8080 -e APP_NAME=dpanel \
--log-driver json-file --log-opt max-size=5m --log-opt max-file=10 \
-v /var/run/docker.sock:/var/run/docker.sock \
-v /home/dpanel:/dpanel dpanel/dpanel:latest开启 IPV6
如 Docker 环境未配置默认 IPv6 支持,标准版将无法转发 IPv6 地址。可在面板中创建任意 IPv6 网络,并将面板容器加入该网络。
更新或重建面板
更新与重建的区别在于是否保留面板挂载目录(/dpanel)的配置。 删除宿主机挂载目录或重新指定目录为重建面板,否则为升级面板查看升级命令。
手动创建文件管理插件
TIP
将文件管理容器的标签 com.dpanel.container.auto_remove 配置为 true 时,面板会在每次关闭浏览器后自动清理容器;配置为 false 则不清理。
docker run -it -d --name dpanel-plugin-explorer --restart always --pid host --label com.dpanel.container.title="DPanel 文件管理助手" --label com.dpanel.container.auto_remove=false alpine