向导式堆栈管理器Dockge

在这里插入图片描述

经过申诉,目前博客的几个域名都恢复了,时间也延长到了 2033 年,后面还会不会出问题,老苏就不知道了

在这里插入图片描述


什么是 Dockge ?

Dockge 是一款时髦的、易于使用的、响应式的、自托管的 docker-compose.yaml 向导式堆栈管理器,可作为 Portainer 的替代品。使用 Dockge,您可以轻松管理compose.yaml 文件,为所有 Docker 配置需求提供一个集中的管理点。Dockge 提供了包括创建、编辑、启动、停止、重新启动和删除 Docker 配置的选项,为您的 Docker 环境提供全生命周期管理。

DockgeUptime Kuma 的创建者开发,提供了简化的用户体验,您所需的一切都可以在单个页面上方便地获得,一目了然,无需打开多个选项卡来检查日志或管理容器,确保无缝的 Docker 管理体验。

在这里插入图片描述

动图演示

在这里插入图片描述

视频演示

Dockge 功能演示

安装

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

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

/var/run/docker.sockDocker 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 方式安装。

本文写作时, latest 版本对应为 1.2.0

如果你熟悉命令行,可能用 docker cli 更快捷

# 新建文件夹 dockge 和 子目录
mkdir -p /volume1/docker/dockge/{data,stacks}

# 进入 dockge 目录
cd /volume1/docker/dockge

# 运行容器
docker run -d \
   --restart unless-stopped \
   --name dockge \
   -p 5031:5001 \
   -v /var/run/docker.sock:/var/run/docker.sock \
   -v $(pwd)/stacks:/volume1/docker/dockge/stacks \
   -v $(pwd)/data:/app/data \
   -e DOCKGE_STACKS_DIR=/volume1/docker/dockge/stacks \
   louislam/dockge:latest

docker-compose 安装

也可以用 docker-compose 安装,将下面的内容保存为 docker-compose.yml 文件

version: "3.8"
services:
  dockge:
    image: louislam/dockge:latest
    container_name: dockge
    restart: unless-stopped
    ports:
      - 5031:5001
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock
      - ./data:/app/data
      - ./stacks:/volume1/docker/dockge/stackss
    environment:
      - DOCKGE_STACKS_DIR=/volume1/docker/dockge/stacks

然后执行下面的命令

# 新建文件夹 dockge 和 子目录
mkdir -p /volume1/docker/dockge/{data,stacks}

# 进入 dockge 目录
cd /volume1/docker/dockge

# 将 docker-compose.yml 放入当前目录

# 一键启动
docker-compose up -d

运行

在浏览器中输入 http://群晖IP:5031 就能看到注册界面

在这里插入图片描述

登录成功后的主界面

在这里插入图片描述

选择已经启动的容器,会显示 这个堆栈不由 Dockge 管理

在这里插入图片描述

docker-compose 安装

针对采用 docker-compose 安装的,如果要管理现有堆栈,需要将 compose 文件移动到 stacks 目录中

【备注】:docker-compose.ymlcompose.yml 是两种常见的文件名,用于 Docker Compose 配置文件。它们在功能和使用上是相同的,只是文件名不同。

  1. 停止你的堆栈
  2. 将您的 compose 文件移至 /opt/stacks/<stackName>/compose.yaml
  3. Dockge 中,单击右上角下拉菜单中的 “扫描堆栈文件夹” 按钮
  4. 现在您应该在列表中看到您的堆栈

look scanned 为例,先停止容器

在这里插入图片描述

然后将 look scanneddocker-compose.yaml 文件复制到 stacks 目录中,并重命名了一下

在这里插入图片描述

开始扫描

在这里插入图片描述

现在就可以编辑、重启、更新、停止或者删除了

在这里插入图片描述

docker cli 安装

Dockge 只显示通过 docker-compose 安装的 stacks,不显示 docker cli 方式安装的容器,你在前面主界面看到启动了 9 个堆栈,退出了 6 个,这和 portainer 中是一致的

在这里插入图片描述

如果想用 Dockge 管理全部的堆栈和容器,就需要用到 docker run ...compose 的转换功能

还是以 look scanned 为例,安装时的 docker cli 命令是这样的

docker run -d \
   --name lookscanned \
   -p 3366:80 \
   wbsu2003/lookscanned

将启动命令复制到文本框中

在这里插入图片描述

转换为Compose格式,给堆栈一个名字

在这里插入图片描述

可以保存

在这里插入图片描述

或者直接部署

在这里插入图片描述

Dockge 会根据堆栈名称创建目录

在这里插入图片描述

虽然 Dockge 确实解决了一些痛点,也可能是习惯使然,暂时还不不打算从 Portainer 切换到 Dockge,但会保持持续关注

参考文档

louislam/dockge: A fancy, easy-to-use and reactive self-hosted docker compose.yaml stack-oriented manager
地址:https://github.com/louislam/dockge

Dockge
地址:https://dockge.kuma.pet/

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/411810.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

python使用winio控制x86工控机的gpio

视频讲解 https://www.bilibili.com/video/BV1Nu4m1w7iv/?vd_source5ba34935b7845cd15c65ef62c64ba82f pywinio库 https://pypi.org/project/pywinio/ 安装库 pip install pywinio寄存器地址 测试代码 import pywinio winio get_winio() # 设置排针2输出1,0x40是bit6置…

SSMBUG之 url +

1. Failed to configure a DataSource: ‘url’ attribute is not specified and no embedded datasource could be configured. 经查, 书写一切正常. 注意到此时yml文件的图标是一个红色的Y而不是绿色的spring , 推测没有正确加载. 重新创建项目, 所有东西拷贝一份便恢复正常…

04|MySQL事务及ACID

1 事务 事务是一组操作要么全部成功&#xff0c;要么全部失败&#xff0c;目的是为了保证数据最终的一致性。 2 事务的ACID属性 2.1 原子性(Atomicity) 当前事务的操作要么同时成功&#xff0c;要么同时失败。原子性由 undo log日志来实现。 2.2 一致性(Consistent) 使用…

爬虫入门四(抽屉半自动点赞、xpath使用、动作链、打码平台、scrapy框架介绍与安装及创建项目)

文章目录 一、抽屉半自动点赞二、xpath的使用三、动作链四、打码平台介绍超级鹰打码基本测试 五、自动登录超级鹰六、scrapy框架介绍安装创建爬虫项目 一、抽屉半自动点赞 登录抽屉账号保存cookiesimport timeimport jsonfrom selenium import webdriverfrom selenium.webdrive…

javascript给对象添加迭代器

迭代器是啥就自行百度了 为啥for…of可以遍历数组&#xff0c;为啥不能遍历对象&#xff0c;就是for…of会调用迭代器&#xff0c;而数组是内置了迭代器了&#xff0c;而对象没有内置&#xff0c;所以直接使用for…of遍历对象会报错&#xff0c;因此只用在对象的原型上面自定义…

复旦EMBA徐能:攻克新能源+关键技术,十年如一日拓荒前行

乘着“双碳”战略的东风&#xff0c;我国新能源产业迎来了重大发展机遇。在低碳绿色发展日渐成为全球共识的背景下&#xff0c;新能源产业正在发生什么变化&#xff0c;未来的发展将呈现什么格局&#xff1f;本期《同学同行》让我们一起走进复旦大学EMBA 2022级2班同学徐能和他…

Linux服务器节点性能问题排查和优化思路

Linux服务器节点性能问题排查和优化思路 1. atop安装2. 整体思路2.1 如果现场存在/能复现2.2 如果现场不能复现&#xff1a; 3. 高负载问题排查与应对3.1. hung task 问题3.2. 底层硬盘/文件系统无法写入3.3. IO性能不足导致的运行缓慢3.4. CPU 性能不足导致的运行缓慢&#xf…

今天面了个字节拿 38K 出来的测试,让我见识到了基础的天花板

最近内卷严重&#xff0c;各种跳槽裁员&#xff0c;相信很多小伙伴也在准备金九银十的面试计划。 作为一个入职5年的老人家&#xff0c;目前工资比较乐观&#xff0c;但是我还是会选择跳槽&#xff0c;因为感觉在一个舒适圈待久了&#xff0c;人过得太过安逸&#xff0c;晋升涨…

wcf 简单实践 数据绑定 数据更新ui

1.概要 2.代码 2.1 xaml <Window x:Class"WpfApp3.MainWindow"xmlns"http://schemas.microsoft.com/winfx/2006/xaml/presentation"xmlns:x"http://schemas.microsoft.com/winfx/2006/xaml"xmlns:d"http://schemas.microsoft.com/expr…

SpringIOC之support模块StaticMessageSource

博主介绍&#xff1a;✌全网粉丝5W&#xff0c;全栈开发工程师&#xff0c;从事多年软件开发&#xff0c;在大厂呆过。持有软件中级、六级等证书。可提供微服务项目搭建与毕业项目实战&#xff0c;博主也曾写过优秀论文&#xff0c;查重率极低&#xff0c;在这方面有丰富的经验…

react useRef用法

1&#xff0c;保存变量永远不丢失 import React, { useState,useRef } from react export default function App() { const [count,setcount] useState(0) var mycount useRef(0)//保存变量永远不丢失--useRef用的是闭包原理 return( <div> <button onClick{()>…

消息中间件之RocketMQ源码分析(十七)

Broker CommitLog索引机制的数据结构 ConsumerQueue消费队列 主要用于消费拉取消息、更新消费位点等所用的索引。源代码参考org.apache.rocketmq.store.ConsumerQueue.该文件内保存了消息的物理位点、消息体大小、消息Tag的Hash值 物理位点:消息在CommitLog中的位点值消息体…

2024-02-26(Spark,kafka)

1.Spark SQL是Spark的一个模块&#xff0c;用于处理海量结构化数据 限定&#xff1a;结构化数据处理 RDD的数据开发中&#xff0c;结构化&#xff0c;非结构化&#xff0c;半结构化数据都能处理。 2.为什么要学习SparkSQL SparkSQL是非常成熟的海量结构化数据处理框架。 学…

matlab采用不同数值方法求解微分方程

1、内容简介 略 60-可以交流、咨询、答疑 欧拉方法、改进欧拉、RK4、米尔斯坦方法求解微分方程 2、内容说明 略 lc; close all; clear all; % 参数赋值 global a global b global h a 1; b 2; Ni 1000; % 总步数 h 0.001; % 步长Xt1(1:Ni) 0; Xt2(…

合泰杯开发板HT66F2390入门教程(点亮LED灯)——获得成就:点灯大师

前言 前不久报名了合泰杯竞赛项目&#xff0c;然后手上也是有一个HT66F2390的开发板&#xff0c;我就打算先从点灯开始&#xff0c;学习一个新的芯片第一步都是先成为点灯大师。 一开始&#xff0c;我在网上搜寻了许多的代码示例&#xff0c;希望能够顺利实现LED的控制。然而&…

敏捷开发——第一次作业:个人简历/登录界面

1. 新建文件夹&#xff0c;用VScode打开 2. 新建文件&#xff0c;后缀设为.html 3. 感叹号自动生成框架&#xff0c; alt b&#xff1a;在默认浏览器中打开&#xff0c;shift alt ↓&#xff1a;向下复制一行 <ul> <li>&#xff1a;无序列表和列表项 <ol>…

进程与线程之线程

首先exec函数族是进程中的常用函数&#xff0c;可以利用另外的进程空间执行不同的程序&#xff0c;在之前的fork创建子进程中会完全复制代码数据段等&#xff0c;而exec函数族则可以实现子进程实现不同的代码 int execl(const char *path, const char *arg, ... …

视频会议参会成员入会时无规律掉线解决方案:奇安信防火墙关闭ALG(反向代理)

【问题描述】 单位组织视频会议&#xff0c;出现很严重的问题是参会人员不能全部入会&#xff0c;多家单位依次都出现这种现象&#xff0c;无法入会的单位不固定。 【问题原因】 抓包查询到上级单位的奇安信防火墙出现了问题。 H323协议和SIP协议的视频流数据包经过防火墙以后…

Jeecg项目部署

说明&#xff1a;Jeecg是一款低代码开发平台&#xff0c;简单说是一款现成的项目&#xff0c;该项目集成了许多功能&#xff0c;我们可以在这个项目之上开发自己的业务代码。 本文介绍Jeecg项目的部署&#xff0c;包括后端jeecg-boot项目、前端vue3项目。前端项目在本地Window…

什么是上网行为审计软件?上网行为审计系统都有什么功能?

上网行为审计软件是指对网络进行监控和管理的一种软件&#xff0c;可以对员工或学生的上网行为进行记录、审计和分析&#xff0c;以便更好地管理网络资源&#xff0c;提高网络安全性和效率。 上网行为审计软件可以帮助企业或学校实现以下功能&#xff1a; 1. 监控上网行为 可…