简单美观易上手的 Docker Compose 可视化管理器 Dockge

本文首发于只抄博客,欢迎点击原文链接了解更多内容。

前言

Dockge 是 Uptime Kuma 作者的新作品,因此 UI 风格与 Uptime Kuma 基本一致,如果你正在使用 Uptime Kuma 的话,那么 Dockge 的 UI 设计应该也不会让你失望。Dockge 主打的是简单易上手,与 Potainer 相比界面简洁易用,新手使用不会感到一头雾水。

优点

  • 通过 Web 页面管理 compose.yaml 文件(创建 / 编辑 / 启动 / 停止 / 重新启动 / 删除 )
  • 响应式操作,pull / up / down 操作输出都会实时显示
  • 可以将 docker run ... 转换为 compose.yaml 文件
  • 直接存储 compose.yaml 文件,可以使用常规 docker compose 命令进行操作

缺点

  • 与 Potainer 等相比功能没有那么丰富,例如没有单独管理网络、镜像功能
  • 无法直接接管现有正在运行的容器
  • 只支持通过 Docker Compose 来完成所有操作,无法直接管理单个容器

安装

安装目录建议与官方文档保持一致

sh 复制代码
# 创建目录
mkdir -p /opt/stacks /opt/dockge
cd /opt/dockge

# 下载 compose.yaml
curl https://raw.githubusercontent.com/louislam/dockge/master/compose.yaml --output compose.yaml

# 启动服务
docker compose up -d

网络不顺畅的也可以手动在 /opt/dockge 目录创建 compose.yaml 文件

yaml 复制代码
version: "3.8"
services:
  dockge:
    image: louislam/dockge:1
    restart: unless-stopped
    ports:
      - 5001:5001
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock
      - ./data:/app/data
      # Stacks Directory
      # ⚠️ READ IT CAREFULLY. If you did it wrong, your data could end up writing into a WRONG PATH.
      # ⚠️ 1. FULL path only. No relative path (MUST)
      # ⚠️ 2. Left Stacks Path === Right Stacks Path (MUST)
      - /opt/stacks:/opt/stacks
    environment:
      # Tell Dockge where to find the stacks
      - DOCKGE_STACKS_DIR=/opt/stacks

使用

  1. 通过 http://ip:5001 进入 Dockge 后台,首次访问需要创建用户名与密码
  1. 如果是 docker run 命令,可以直接粘贴到首页的输入框中,转换为 Compose 格式
  1. 来到编辑页面,命名后点击部署按钮即可开始部署步骤
  1. 可以通过下方的窗口观察部署的进度
  1. 稍等片刻,完成部署后,就可以看到容器的运行状态,并且可以对容器进行重启 / 更新 / 停止 / 删除

迁移现有 compose 文件

由于 Dockge 并不能直接接管正在运行的容器,需要我们将自己 compose.yaml 手动放入 Dockge 对应的目录中,具体步骤如下:

  1. 停止正在运行的容器
  2. compose.yaml 文件移动到 /opt/stacks/<stackName>/compose.yaml
  3. 在 Dockge 下拉菜单中,点击扫描堆栈文件夹
  1. 刷新页面,新添加的 compose.yaml 文件就会在左侧列表中读取出来了
相关推荐
Madison-No71 小时前
搭建项目测试环境
linux·运维·服务器·python
吴声子夜歌2 小时前
Shell编程实例——编写安全的shell脚本(二)
linux·运维·shell
悠悠121383 小时前
微服务通信别只看性能:REST 与 gRPC 的 6 个选型判断和一次 502 故障复盘
运维·服务器
zx_741484815 小时前
【Linux入门】Shell 函数、正则表达式与文本处理:cut 与 awk
linux·运维·正则表达式
Zenova EdgeOS5 小时前
Linux dmesg 工业边缘实战:内核日志过滤、持久化与故障定位
linux·运维·边缘计算·工业边缘·dmesg·内核日志
九皇叔叔5 小时前
K8S 资源菜单
docker·容器·kubernetes·k8s
wdfk_prog6 小时前
ROS教程08:从 TransportTCP::connect() 追到 TCPROS Connection Header、序列化与 Socket 数据传输
运维·缓存·docker·容器·ros
Zhu7586 小时前
docker环境快速部署postgresql数据库18及以上版本
postgresql·容器
做运维的阿瑞6 小时前
Python 标准库汇总:分类速览与常用模块清单
linux·运维·python
zoutao987 小时前
Gitea Actions 自定义 Runner 镜像与自动化部署实战
ci/cd·docker·gitea