问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

Docker可视化管理面板DPanel的安装教程

创作时间:
作者:
@小白创作中心

Docker可视化管理面板DPanel的安装教程

引用
1
来源
1.
https://laosu.gq/2024/11/04/Docker%E5%8F%AF%E8%A7%86%E5%8C%96%E7%AE%A1%E7%90%86%E9%9D%A2%E6%9D%BFDPanel%E7%9A%84%E5%AE%89%E8%A3%85/

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

参考文档

© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号