本文软件由网友
rui
推荐;
什么是 DPanel ?
DPanel
是一款Docker
可视化管理面板,旨在简化Docker
容器、镜像和文件的管理。它提供了一系列功能,使用户能够更轻松地管理和部署Docker
环境。
软件特点:
- 可视化管理:提供直观的用户界面,方便用户管理
Docker
容器和镜像。 - 容器管理:用户可以创建、启动、停止和删除容器,查看容器日志和状态。
- 镜像管理:支持镜像的拉取、推送、构建和删除等操作。
- 文件管理:允许用户浏览和管理容器内的文件系统。
- Compose 支持:可以创建和部署
Docker Compose
项目,简化多容器应用的管理。 - 容器关联:提供容器之间的关联功能,便于多个容器之间的互相依赖访问。
- 镜像构建:提供多种环境的基础镜像和模板,可以快速构建属于自己的镜像。
安装
在群晖上以 Docker 方式安装。
说明
DPanel
有两个版本,一个是标准版本,还有个 Lite
版。其中 Lite
版本中,不包含域名转发功能。即容器内不会安装 nginx
及 acme.sh
等相关组件。
Lite
版如果需要域名转发,需要借助外部工具,例如 NginxProxyManager
、Lucky
、宝塔、Nginx
等
本文采用的是标准版 dpanel/dpanel:latest
本文写作时,
latest
版本对应为1.1.4
;
如果你下载不了,可以使用国内镜像:registry.cn-hangzhou.aliyuncs.com/dpanel/dpanel:latest
另一个国内镜像: ccr.ccs.tencentyun.com/dpanel/dpanel:latest
,似乎版本还停留在 1.0.4.2
,就不建议使用了
/var/run/docker.sock
与容器相关的应用,都需要绑定挂载 /var/run/docker.sock
,包括我们之前安装的 portainer
、watchtower
,Glances
,Netdata
等。
什么是 /var/run/docker.sock
?
/var/run/docker.sock
是Docker API
的主要入口,简单地说,它是Docker
守护进程(Docker daemon
)默认监听的Unix
域套接字(Unix domain socket
),容器中的进程可以通过它与Docker
守护进程进行通信。
图片来自:https://betterprogramming.pub/about-var-run-docker-sock-3bfd276e12fd
但是群晖的 Docker
管理器并不支持挂载 /var/run/docker.sock
文件,所以这次我们需用命令行来安装
docker cli 安装
如果你熟悉命令行,可能用 docker cli
更快捷
# 新建文件夹 dpanel 和 子目录
mkdir -p /volume1/docker/dpanel/data# 进入 dpanel 目录
cd /volume1/docker/dpanel# 运行容器
docker run -d \--restart unless-stopped \--name dpanel \-p 8807:8080 \-v /var/run/docker.sock:/var/run/docker.sock \-v $(pwd)/data:/dpanel \-e APP_NAME=dpanel \dpanel/dpanel:latest# 运行容器(国内源)
docker run -d \--restart unless-stopped \--name dpanel \-p 8807:8080 \-v /var/run/docker.sock:/var/run/docker.sock \-v $(pwd)/data:/dpanel \-e APP_NAME=dpanel \registry.cn-hangzhou.aliyuncs.com/dpanel/dpanel:latest
APP_NAME:dpanel
:APP_NAME
请保持与container_name
一致
默认安装完成后,只有一个容器
但是当你使用文件管理时,第一次打开时会比较慢
因为会下载 dpanel/explorer:lates
镜像生成了一个新的容器 dpanel-plugin-explorer
,用于完成文件浏览
docker-compose 安装
所以,我们也可以用 docker-compose
一起安装,这样话,就算是第一次打开文件管理也是很快的
将下面的内容保存为 docker-compose.yml
文件
version: '3'services:dpanel:image: registry.cn-hangzhou.aliyuncs.com/dpanel/dpanel:latest# image: dpanel/dpanel:latestcontainer_name: dpanelrestart: unless-stoppedports:- 8807:8080 volumes:- /var/run/docker.sock:/var/run/docker.sock- ./data:/dpanelenvironment:- APP_NAME=dpanel- INSTALL_USERNAME=admin- INSTALL_PASSWORD=admindpanel-plugin-explorer:image: alpine:latest container_name: dpanel-plugin-explorerrestart: unless-stoppedprivileged: truepid: hostcommand: ["sh", "-c", "tail -f /dev/null"]
APP_NAME
:请保持与container_name
一致;INSTALL_USERNAME
:用于指定用户名;INSTALL_PASSWORD
:用于指定密码;
然后执行下面的命令
# 新建文件夹 dpanel 和 子目录
mkdir -p /volume1/docker/dpanel/data# 进入 dpanel 目录
cd /volume1/docker/dpanel# 将 docker-compose.yml 放入当前目录# 一键启动
docker-compose up -d
运行
在浏览器中输入 http://群晖IP:8807
就能看到登录界面
如果你没有通过环境变量指定用户名和密码,那么默认用户密码为 admin/admin
不知道什么原因,用量统计显示不出来,从日志看似乎与磁盘相关
default home {"info": "disk usage timeout "}
老苏尝试在另一台群晖上运行,却又是正常的
从日志看,这次获取到了磁盘的信息,所以前面的可能是特殊情况了
default home {"info": "get disk usage"}
软件除了类似 portainer
的功能外,还有一些特色的功能,比如: 替换服务
假如用 compose
部署两个 wordpress
项目,会产多个 mysql
数据库。 但是在实际中,大部分的做法是让多个 wordpress
共用同一个 mysql
实例,用不同的数据库进行区分。
为此 DPanel
面板提供了将 compose
中的服务替换为已存在的容器的功能。
更多功能,可以去看官方的说明文档,中文的,而且挺详细的,地址:https://dpanel.cc/#/README
另外还有很多视频教程:https://space.bilibili.com/346309066
参考文档
donknap/dpanel: docker可视化管理面板
地址:https://github.com/donknap/dpanel
DPanel 可视化 Docker 管理面板
地址:https://dpanel.cc/#/
Docker
地址:https://dpanel.cc/#/zh-cn/install/docker