当前位置: 首页 > news >正文

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

在这里插入图片描述

本文软件由网友 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,就不建议使用了

/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 安装

如果你熟悉命令行,可能用 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,用于完成文件浏览

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

相关文章:

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

本文软件由网友 rui 推荐; 什么是 DPanel ? DPanel 是一款 Docker 可视化管理面板,旨在简化 Docker 容器、镜像和文件的管理。它提供了一系列功能,使用户能够更轻松地管理和部署 Docker 环境。 软件特点: 可视化管理&…...

【android12】【AHandler】【3.AHandler原理篇AHandler类方法全解】

AHandler系列 【android12】【AHandler】【1.AHandler异步无回复消息原理篇】-CSDN博客 【android12】【AHandler】【2.AHandler异步回复消息原理篇】-CSDN博客 其他系列 本人系列文章-CSDN博客 1.简介 前面两篇我们主要介绍了有回复和无回复的消息的使用方法和源码解析&a…...

使用Docker Compose构建多容器应用

💓 博客主页:瑕疵的CSDN主页 📝 Gitee主页:瑕疵的gitee主页 ⏩ 文章专栏:《热点资讯》 使用Docker Compose构建多容器应用 引言 Docker Compose 简介 安装 Docker Compose 创建基本配置 运行多容器应用 查看服务状态 …...

面试知识目录

面试知识目录 八股文 java基础 java反射java HashMap面向对象多线程虚拟机内存 SpringMybatisMySQLPostgresqlSQL优化Nosql...

Rust移动开发:Rust在Android端集成使用介绍

Andorid调用Rust 目前Rust在移动端上的应用,一般作为应用sdk的提供,供各端使用,目前飞书底层使用Rust编写通用组件。 该篇适合对Android、Rust了解,想看如何做整合,如果想要工程源码,可以评论或留言有解疑…...

vue3动态监听div高度案例

案例场景 场景描述&#xff1a;现在左边的线条长度需要根据右边盒子的高度进行动态变化 实践代码案例 HTML部分 <div v-for"(device, index) in devices" :key"index"><!-- 动态设置 .left-bar 的高度 --><div class"left-bar"…...

数据转换 | Matlab基于SP符号递归图(Symbolic recurrence plots)一维数据转二维图像方法

目录 基本介绍程序设计参考资料获取方式 基本介绍 Matlab基于SP符号递归图&#xff08;Symbolic recurrence plots&#xff09;一维数据转二维图像方法 符号递归图(Symbolic recurrence plots)是一种一维时间序列转图像的技术&#xff0c;可用于平稳和非平稳数据集;对噪声具有…...

分类算法——逻辑回归 详解

逻辑回归&#xff08;Logistic Regression&#xff09;是一种广泛使用的分类算法&#xff0c;特别适用于二分类问题。尽管名字中有“回归”二字&#xff0c;逻辑回归实际上是一种分类方法。下面将从底层原理、数学模型、优化方法以及源代码层面详细解析逻辑回归。 1. 基本原理 …...

只允许指定ip远程连接ssh

我们都会使用securtcrt或者xshell等软件进行远程登录&#xff0c;这样虽然会给我们带来很多便捷&#xff0c;但是同样会存在一定的风险。有很多人专门通过重复的扫描试图破解我们的linux服务器&#xff0c;从而获取免费的“肉鸡”。因此我们可以通过设置hosts.allow和hosts.den…...

Rust 力扣 - 2841. 几乎唯一子数组的最大和

文章目录 题目描述题解思路题解代码题目链接 题目描述 题解思路 我们遍历长度为k的窗口&#xff0c;用一个哈希表记录窗口内的所有元素&#xff08;用来对窗口内元素去重&#xff09;&#xff0c;我们取哈希表中元素数量大于等于m的窗口总和的最大值 题解代码 use std::coll…...

TwinCL: A Twin Graph Contrastive Learning Model for Collaborative Filtering

TwinCL: A Twin Graph Contrastive Learning Model for Collaborative Filtering 摘要 在推荐和协同过滤领域&#xff0c;图对比学习&#xff08;Graph Contrasive Learning&#xff0c;GCL&#xff09;已经成为一种有影响的方法。然而&#xff0c;对比学习有效性的原因还没有…...

如何区分实例化网格中的每个实例

1&#xff09;如何区分实例化网格中的每个实例 2&#xff09;项目在模拟器上切换程序后有概率画面冻结 3&#xff09;Unity工程导入团结引擎&#xff0c;GUID会变化&#xff0c;导致引用关系丢失 4&#xff09;Mask在Android平台下渲染异常 这是第407篇UWA技术知识分享的推送&a…...

理解 WordPress | 第一篇:与内容管理系统的关系

初步了解 WordPress 在互联网世界里&#xff0c;WordPress 是一个家喻户晓的名字。它是一个开源的内容管理系统&#xff08;Content Management System&#xff0c;简称 CMS&#xff09;&#xff0c;帮助用户轻松创建和管理网站。WordPress 诞生于 2003 年&#xff0c;最初是一…...

Python游戏脚本之实现飞机大战(附源码)

一.游戏设定 游戏界面如下图所示&#xff1a; 游戏的基本设定: 敌方共有大中小3款飞机&#xff0c;分为高中低三种速度; 子弹的射程并非全屏,而大概是屏幕长度的80%; 消灭小飞机需要1发子弹,中飞机需要8发,大飞机需要20发子弹; 每消灭一架小飞机得1000分,中飞机6000分,大飞…...

使用Spring Boot搭建简单的web服务

1 引言 1.1 Spring Boot简介 Spring Boot是由Pivotal团队提供的一套开源框架&#xff0c;旨在简化Spring应用的创建及部署。 一、核心设计思想 Spring Boot的核心设计思想是“约定优于配置”&#xff08;Convention Over Configuration&#xff0c;简称COC&#xff09;。这…...

【IF-MMIN】利用模态不变性特征进行缺失模态的鲁棒多模态情感识别

代码地址&#xff1a;github地址传送 文章是基于MMIN的改进 -> MMIN传送 abstract 多模态情感识别利用跨模态的互补信息来获得性能。然而&#xff0c;我们不能保证所有模式的数据总是存在于实践中。在跨模态数据缺失预测研究中&#xff0c;异质性模态之间的固有差异即模态…...

RGB图像,排列方式NHWC适合CPU计算,NCHW适合GPU计算

之前写过笔记OpenCV读取图像时按照BGR的顺序HWC排列,PyTorch按照RGB的顺序CHW排列,HWC格式排列&#xff0c;那么内存位置计算公式是&#xff1f; 在比较NHWC&#xff08;channels_last&#xff09;和NCHW&#xff08;channels_first&#xff09;这两种图像数据通道格式的效率时…...

布朗运动

内容来源 数理金融初步&#xff08;原书第3版&#xff09;Sheldon M. Ross著 冉启康译 机械工业出版社 布朗运动 定义 如果随机变量集合 X ( t ) X(t) X(t) 满足以下条件 X ( 0 ) X(0) X(0) 是一个给定的常数 对所有正数 y y y 和 t t t&#xff0c;随机变量 X ( y t …...

WPF+MVVM案例实战(二十二)- 制作一个侧边弹窗栏(CD类)

文章目录 1、案例效果1、侧边栏分类2、CD类侧边弹窗实现1、样式代码实现2、功能代码实现3 运行效果4、源代码获取1、案例效果 1、侧边栏分类 A类 :左侧弹出侧边栏B类 :右侧弹出侧边栏C类 :顶部弹出侧边栏D类 :底部弹出侧边栏2、CD类侧边弹窗实现 1、样式代码实现 在原有的…...

集成旺店通旗舰版售后单至MySQL数据库

旺店通旗舰版-售后单集成到MySQL的技术实现 在数据驱动的业务环境中&#xff0c;如何高效、准确地将旺店通旗舰奇门的数据集成到MySQL数据库&#xff0c;是许多企业面临的重要挑战。本文将分享一个具体的系统对接案例&#xff1a;旺店通旗舰版-售后单-->BI泰海-售后订单表(…...

【Linux】从零开始使用多路转接IO --- epoll

当你偶尔发现语言变得无力时&#xff0c; 不妨安静下来&#xff0c; 让沉默替你发声。 --- 里则林 --- 从零开始认识多路转接 1 epoll的作用和定位2 epoll 的接口3 epoll工作原理4 实现epollserverV1 1 epoll的作用和定位 之前提过的多路转接方案select和poll 都有致命缺点…...

爬虫学习4

from threading import Thread#创建任务 def func(name):for i in range(100):print(name,i)if __name__ __main__:#创建线程t1 Thread(targetfunc,args("1"))t2 Thread(targetfunc, args("2"))t1.start()t2.start()print("我是诛仙剑")from …...

CTF之web题集详情随手笔记

《Web安全》http://mp.weixin.qq.com/s?__bizMzkwNjY1Mzc0Nw&mid2247484238&idx1&snca66551c31e37b8d726f151265fc9211&chksmc0e47a12f793f3049fefde6e9ebe9ec4e2c7626b8594511bd314783719c216bd9929962a71e6&scene21#wechat_redirect 1 WEB 1 靶场目…...

TDengine 集群能力:超越 InfluxDB 的水平扩展与开源优势

随着物联网、车联网等领域的快速发展&#xff0c;企业所面临的数据采集量呈爆炸式增长&#xff0c;这对 IT 基础设施和数据库提出了严峻挑战。传统单机版数据库逐渐无法应对高并发的数据写入和复杂的查询需求。因此&#xff0c;底层数据库必须具备水平扩展能力&#xff0c;以确…...

MATCH_DIRECT_BOOT_AWARE和MATCH_DIRECT_BOOT_UNAWARE

PackageManager.MATCH_DIRECT_BOOT_AWARE和PackageManager.MATCH_DIRECT_BOOT_UNAWARE 在Android系统中&#xff0c;PackageManager类提供了一些标志位&#xff0c;用于控制查询系统中的应用和组件时的行为。其中&#xff0c;MATCH_DIRECT_BOOT_AWARE和MATCH_DIRECT_BOOT_UNAWA…...

LabVIEW离心泵性能优化测试系统

开发了一套基于LabVIEW平台开发的离心泵性能优化测试系统。系统集成了数据采集、流量控制、数据存储、报表生成等功能&#xff0c;提供了低成本、便捷操作的解决方案&#xff0c;适用于工业场景中对离心泵性能的精确测评。 项目背景 随着工业化进程的加速&#xff0c;离心泵在…...

token和jwt区别

Token 和 JSON Web Token (JWT) 都是用于身份验证和授权的技术,但它们之间有一些重要的区别。下面是它们的主要区别和各自的特性: 1. 概念上的区别 Token: 广义概念:Token 是一个通用术语,指的是任何形式的令牌,用于在客户端和服务器之间传递身份验证和授权信息。实现方…...

新闻稿件管理:SpringBoot框架实战指南

3系统分析 3.1可行性分析 通过对本新闻稿件管理系统实行的目的初步调查和分析&#xff0c;提出可行性方案并对其一一进行论证。我们在这里主要从技术可行性、经济可行性、操作可行性等方面进行分析。 3.1.1技术可行性 本新闻稿件管理系统采用SSM框架&#xff0c;JAVA作为开发语…...

AI运动小程序开发常见问题集锦二

截止到现在写博文时&#xff0c;我们的AI运动识别小程序插件已经迭代了23个版本&#xff0c;成功应用于健身、体育、体测、AR互动等场景&#xff1b;为了让正在集成或者计划进行功能扩展优化的用户&#xff0c;少走弯路、投入更少的开发资源&#xff0c;针对近期的咨询问题&…...

nginx安装

下载地址 https://nginx.org/en/download.html选择 把下载好的压缩包放在 解压 tar -zxf nginx-1.27.2.tar.gz下载 yum install -y gcc-c pcre pcre-devel zlib zlib-devel openssl openssl-devel ./configuremake&&make install这样表示安装成功 接下去启动nginx…...