Docker可视化管理面板DPanel的安装教程
Docker可视化管理面板DPanel的安装教程
DPanel是一款Docker可视化管理面板,它提供了直观的用户界面,使用户能够更轻松地管理和部署Docker环境。本文将详细介绍DPanel的功能特点及其在群晖系统上的安装步骤。
什么是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:latest
container_name: dpanel
restart: unless-stopped
ports:
- 8807:8080
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- ./data:/dpanel
environment:
- APP_NAME=dpanel
- INSTALL_USERNAME=admin
- INSTALL_PASSWORD=admin
dpanel-plugin-explorer:
image: alpine:latest
container_name: dpanel-plugin-explorer
restart: unless-stopped
privileged: true
pid: host
command: ["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