剪藏#剪藏#各种折腾

Dockman:适用于家庭自托管的Compose管理器

2025 年 8 月 16 日1 分钟
分享Twitter / XTelegram微博

简介

什么是 Dockman ?

Dockman 是一个旨在简化 Docker Compose 文件管理的工具,特别适用于家庭实验室(homelab)环境。它提供了一种直观的方法来编辑、跟踪和备份 Docker Compose 配置。

主要特点

  1. 简化管理:提供一个清晰的界面,专注于 Docker Compose 文件的管理,避免复杂的功能干扰。

  2. 多主机支持:允许从单一实例管理多个 Docker 主机,轻松切换和维护不同服务器上的容器配置。

  3. Git 版本控制:利用 Git 分支进行配置管理,每个主机有独立的分支,便于修改和回滚。

  4. 无代理架构:通过 SSH 连接与远程 Docker 主机通信,无需在远程服务器上安装额外软件。

  5. 环境变量配置:通过环境变量自定义 Dockman 的行为,灵活满足用户需求。

  6. 安全性考虑:提供安全最佳实践建议,确保 Docker Daemon 访问的安全性。

应用场景

  • 家庭实验室:适合个人用户和开发者管理家庭实验室中的 Docker 容器。

  • 开发环境:用于开发和测试环境,便于快速部署和管理服务。

  • 教育与学习:帮助学习 Docker 和容器化技术的用户,通过简单的界面进行实践。

Notion image

Dockman 是为那些喜欢直接编辑配置文件而非 GUI 的用户设计的,旨在提供简洁而高效的工作流程。

安装

在群晖上以 Docker 方式安装。

本文写作时, latest 版本对应为 v1.0.2

Notion image

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

JAVASCRIPT
# 新建文件夹 dockman 和 子目录
mkdir -p /volume1/docker/dockman/stacks

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

# 运行容器
docker run -d \
   --restart unless-stopped \
   --name dockman \
   -p 8866:8866 \
   -v $(pwd)/stacks:/home/zaphodb/stacks \
   -v /var/run/docker.sock:/var/run/docker.sock \
   -e DOCKMAN_COMPOSE_ROOT=/home/zaphodb/stacks \
   ghcr.io/ra341/dockman:latest

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

JAVASCRIPT
version'3'

services:
dockman:
    image:ghcr.io/ra341/dockman:latest
    container_name:dockman
    restart:unless-stopped
    ports:
      -8866:8866
    volumes:
      -./stacks:/home/zaphodb/stacks
      -/var/run/docker.sock:/var/run/docker.sock
    environment:
      -DOCKMAN_COMPOSE_ROOT=/home/zaphodb/stacks

然后执行下面的命令

JAVASCRIPT
# 新建文件夹 dockman 和 子目录
mkdir -p /volume1/docker/dockman/stacks

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

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

# 一键启动
docker-compose up -d

Notion image

运行

在浏览器中输入 http://群晖IP:8866 就能看到主界面

Notion image

ADD 添加一个新的 Compose 文件

Notion image

MTranServer 为例, 取名为 mtranserver.docker-compose.yml,名字是为了方便区别和记忆

Notion image

下面是个 compose 示例

JAVASCRIPT
version'3'

services:
mtranserver:
    image:xxnuo/mtranserver-amd64v1:latest
    container_name:mtranserver
    restart:unless-stopped
    ports:
      -"8989:8989"
    volumes:
      -/volume1/docker/dockman/stacks/models:/app/models
    environment:
      -CORE_API_TOKEN=123456

Notion image

  1. 需要先创建 models 目录并下载模型文件。具体请参考: 基于Firefox模型的私有翻译服务MTranServer

  2. portainer 一样,这里的本地目录要使用绝对路径,而不是相对路径

Notion image

COMMIT 提交之后,就可以 DEPLOY --> START

Notion image

目前软件尚未完成,像左下角的 SettingsLogout 还没有实现,但核心功能已经可以使用了

Dockman 的使用很简单,如果用过 portainer,分分钟就可以上手,实在不行可以看看官方的视频

参考文档

RA341/dockman: Yet another compose manager for homelabs 地址:https://github.com/RA341/dockman

@所有人:写文不易,如果你都看到了这里,请点个在看,分享给更多的朋友;为确保你能收到每一篇文章,请主页右上角设置星标。

原文地址: https://mp.weixin.qq.com/s?__biz=MzI1NTQxMzc3MA==&mid=2247510202&idx=1&sn=29ffef7d02d8e83c24cbc2aeeb6e5063&chksm=eb4db9e0421efee793da0ca2dc154d534fcd51fb8a52f5c7425fb7cb23204a4c80a8843d4ef8&mpshare=1&scene=1&srcid=08161eDJ2idu6hzhy0awvDF0&sharer_shareinfo=ae4be4011565c8099647b5913fb4804e&sharer_shareinfo_first=ae4be4011565c8099647b5913fb4804e#rd

相关文章