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

news/2024/11/8 17:37:37 标签: 群晖, docker, 运维

在这里插入图片描述

本文软件由网友 rui 推荐;

什么是 DPanel ?

DPanel 是一款 Docker 可视化管理面板,旨在简化 Docker 容器、镜像和文件的管理。它提供了一系列功能,使用户能够更轻松地管理和部署 Docker 环境。

软件特点:

  1. 可视化管理:提供直观的用户界面,方便用户管理 Docker 容器和镜像。
  2. 容器管理:用户可以创建、启动、停止和删除容器,查看容器日志和状态。
  3. 镜像管理:支持镜像的拉取、推送、构建和删除等操作。
  4. 文件管理:允许用户浏览和管理容器内的文件系统。
  5. Compose 支持:可以创建和部署 Docker Compose 项目,简化多容器应用的管理。
  6. 容器关联:提供容器之间的关联功能,便于多个容器之间的互相依赖访问。
  7. 镜像构建:提供多种环境的基础镜像和模板,可以快速构建属于自己的镜像。

安装

群晖上以 Docker 方式安装。

说明

DPanel 有两个版本,一个是标准版本,还有个 Lite 版。其中 Lite 版本中,不包含域名转发功能。即容器内不会安装 nginxacme.sh 等相关组件。

Lite 版如果需要域名转发,需要借助外部工具,例如 NginxProxyManagerLucky、宝塔、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,就不建议使用了

dockersock_41">/var/run/docker.sock

与容器相关的应用,都需要绑定挂载 /var/run/docker.sock ,包括我们之前安装的 portainerwatchtowerGlancesNetdata 等。

什么是 /var/run/docker.sock ?

/var/run/docker.sockDocker API 的主要入口,简单地说,它是 Docker 守护进程(Docker daemon)默认监听的 Unix 域套接字(Unix domain socket),容器中的进程可以通过它与 Docker 守护进程进行通信。

title

图片来自:https://betterprogramming.pub/about-var-run-docker-sock-3bfd276e12fd

但是群晖Docker 管理器并不支持挂载 /var/run/docker.sock 文件,所以这次我们需用命令行来安装

docker_cli__55">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:dpanelAPP_NAME 请保持与 container_name 一致

默认安装完成后,只有一个容器

但是当你使用文件管理时,第一次打开时会比较慢

因为会下载 dpanel/explorer:lates 镜像生成了一个新的容器 dpanel-plugin-explorer,用于完成文件浏览

dockercompose__101">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


http://www.niftyadmin.cn/n/5744226.html

相关文章

第一个纯血鸿蒙应用(Napi开发-ArtTS调用C/C++)

1.行业背景 纯血鸿蒙,即鸿蒙Next版已于2014年1月正式发版,鸿蒙生态设备数量已经突破10亿台,已经有超过15000个应用和元服务上架。鸿蒙生态不只是移动设备这么简单,他打造的是一个18n的全场景战略,真正做到了“万物互联…

k8s 上如何跑 Dolphins 模型

接着上一篇的介绍,这一篇就来跑跑 Dolphins 模型,本篇会记录,跑模型常见的阬点。 1 在 k8s 上创建 pod 将外部数据挂载在 pod 里,并申请 gpu 资源。同时修改代码里对应的引入数据的路径 # dolphins.yaml apiVersion: v1 kind: …

Webpack知识点—publicPath

文章目录 一、publicPath的定义和作用二、publicPath的配置方式三、publicPath的注意事项四、publicPath的常见问题和解决方法五、Vite 如何修改publicPathWebpack的publicPath是一个重要的配置项,它用于指定打包后生成的静态资源文件在浏览器中的访问路径。 一、publicPath的…

【计算机网络】章节 知识点总结

一、计算机网络概述 1. 计算机网络向用户提供的两个最重要的功能:连通性、共享 2. 因特网发展的三个阶段: 第一阶段:从单个网络 ARPANET 向互联网发展的过程。1983 年 TCP/IP 协议成为 ARPANET 上的标准协议。第二阶段:建成三级…

亚信安全新一代WAF:抵御勒索攻击的坚固防线

近年来,勒索攻击已成为黑客的主要攻击手段。新型勒索攻击事件层出不穷,勒索攻击形势愈发严峻,已经对全球制造、金融、能源、医疗、政府组织等关键领域造成严重危害。如今,勒索攻击手段日趋成熟、攻击目标愈发明确,模式…

针对曲率中的局部抖动进行平滑

在计算曲率的过程中,采用平滑函数确实能够有效降低数据的抖动现象。然而,若对整个数据集实施平滑处理,则可能会引发数据失真的问题。 为了最大程度地减少抖动并尽可能确保曲率计算的准确性,我们应当仅针对曲率中的局部抖动进行平…

「C/C++」C/C++ 之 变量作用域详解

✨博客主页何曾参静谧的博客📌文章专栏「C/C」C/C程序设计📚全部专栏「VS」Visual Studio「C/C」C/C程序设计「UG/NX」BlockUI集合「Win」Windows程序设计「DSA」数据结构与算法「UG/NX」NX二次开发「QT」QT5程序设计「File」数据文件格式「PK」Parasoli…

力扣—不同路径(路径问题的动态规划)

文章目录 题目解析算法原理代码实现题目练习 题目解析 算法原理 状态表示 对于这种「路径类」的问题,我们的状态表示⼀般有两种形式: i. 从[i, j] 位置出发。 ii. 从起始位置出发,到[i, j] 位置。 这⾥选择第⼆种定义状态表⽰的⽅式&#xf…