可视化docker compose管理工具Compose Craft

这两天把公众号后台的 AI 机器人换了一下,之前用的扣子,因为延时大,总是要输入 继续 才行

文章传送门:手把手教你搭建公众号AI聊天机器人

现在换成了 腾讯元器,毕竟是一家人,能直接将公众号文章作为知识库

欢迎大家来公众号后台调戏。至于限额,不行再切回扣子呗


简介

什么是 Compose Craft ?

Compose Craft 是一个工具,旨在帮助用户以图形用户界面(GUI)的方式管理、编辑和分享 Docker Compose 文件。

主要特点

  • 图形化创建:用户可以通过图形化界面创建 Docker Compose 文件,简化了配置过程。
  • 一键分享:支持通过公共链接快速分享 Docker Compose 图表。
  • 自定义导入:用户可以导入自己的 Docker 文件,并能将生成的代码导出。
  • 在线和自托管:用户可以使用在线工具(访问 composecraft.com)或在自己的基础设施上自托管该工具。
  • 技术栈:该项目使用 Next.jsTypeScript 开发,数据库为 MongoDB

总的来说,Compose Craft 旨在简化 Docker Compose 文件的创建和管理,提高开发和运维的效率。

安装

在群晖上以 Docker 方式安装。

在注册表中搜索 composecraft ,选择第一个 composecraft/composecraft,版本选择 latest

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

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

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
version: '3'

services:
saas:
image: composecraft/composecraft:latest
container_name: composecraft-web
ports:
- 3393:3000
environment:
- CORE_ONLY=true
- URL=http://192.168.0.197:3393
- SECRET_KEY=changeme
- MONGODB_URI=mongodb://dev:dev@db
depends_on:
- db

db:
image: mongo:latest
container_name: composecraft-db
# ports:
# - 27017:27017
volumes:
- ./data:/data/db
environment:
- MONGO_INITDB_ROOT_USERNAME=dev
- MONGO_INITDB_ROOT_PASSWORD=dev

关于环境变量的简单说明

可变
SECRET_KEY 用于签署 JWT 令牌的密钥
MONGODB_URI 用于连接 MongoDBURI
URL 用于一些重定向和公共链接生成的基本 URL
CORE_ONLY 禁用 SaaS 托管功能(允许简单自托管)
DISABLE_TELEMETRY 禁用遥测功能

其中:

  • **SECRET_KEY**:该变量用于确保 JWT 令牌的安全性,防止未授权访问。
  • **MONGODB_URI**:用于连接 MongoDB 数据库,确保应用能够访问其数据。
  • **URL**:指定应用的基本 URL,用于生成重定向和公共链接。
  • **CORE_ONLY**:当设置为 true 时,仅启用核心功能,适合自托管用户。
  • **DISABLE_TELEMETRY**:如果设置为 true,应用将不会收集使用数据,保护用户隐私。

然后执行下面的命令

1
2
3
4
5
6
7
8
9
10
# 新建文件夹 composecraft 和 子目录
mkdir -p /volume1/docker/composecraft/data

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

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

# 一键启动
docker-compose up -d

运行

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

点右上角的 Get started 可以进入尝试模式

最好还是注册一个账号

登录后的主界面

点中间的 + 号创建第一个 docker compose

目前可用的五种类型是:

  1. 网络
  2. 环境变量
  3. 服务
  4. 绑定(属于卷的一种)

以自身为例,完成之后的效果

可以直接预览

也可以生成 docker-compose.yaml 并下载

参考文档

composecraft/composecraft
地址:https://github.com/composecraft/composecraft

Compose Craft
地址:https://composecraft.com/

Compose craft Documentation | Compose Craft Docs
地址:https://composecraft.com/docs/