需要一点组装,不过不多。

属于你自己的收藏应用,按你的方式来。

KolleK 是一个完整的收藏应用,你可以在自己选择的基础设施上运行它。从 Docker Compose 开始,让各个部件保持易于理解,并为升级和备份保留一条清晰的路径。

bash — kollek@server: ~/kollek

步骤 1 · 克隆

$ git clone https://github.com/djaiss/kollek.git kollek

Cloning into 'kollek'... done.

步骤 2 · 配置

$ cd kollek && cp .env.docker.example .env

Set APP_KEY, DB_PASSWORD in .env

步骤 3 · 设置应用密钥

$ docker compose run --rm app php artisan key:generate

Application key set.

步骤 4 · 启动

$ docker compose up -d

Started app, queue, scheduler, mysql · migrations ran on boot

4 containers healthy · app on http://localhost:8000

从一个空目录到运行中的实例,只需四条命令。最后一条是“docker compose up”,而不是碰运气。

从零到运行的短路径

受支持的路径是 Docker。

用有文档的配置启动 Web 应用、队列工作进程、调度器、数据库和存储,而不是靠论坛帖子和乐观精神拼凑一套栈。

1

克隆仓库

git clone …/kollek

拉取源代码及其附带的 Compose 栈。

2

设置你的 .env

cp .env.docker.example .env

复制示例 env,然后设置应用密钥和数据库密码。

3

启动 Compose

docker compose up -d

四个容器一起启动:app、queue、scheduler 和 MySQL。

4

运行起来了

http://localhost:8000

迁移在启动时运行。在浏览器中打开应用。

小到能看懂

五个部分,全部角色就这些。

KolleK 使用一个 Web 角色、一个队列角色、一个调度器角色、MySQL 和持久存储。每个部件都有各自的职责,且都在文档中有所说明。

Compose 栈 docker-compose.yml · 4 个服务

应用

Web app

通过 nginx 和 PHP-FPM 提供应用,并在启动时运行数据库迁移。

队列工作进程 queue

处理 high、default 和 low 队列上的后台任务。

调度器 scheduler

运行 artisan 调度:周期性的清理和维护任务。

读写

状态与存储

MySQL 持久卷

保存你的收藏、藏品、副本和历史记录:唯一可信来源。

db-data → /var/lib/mysql

持久存储 持久卷

上传的照片、文档和生成的文件。本地磁盘或任意兼容 S3 的存储桶。

storage-data → /var/www/html/storage

升级时不必屏住呼吸

你的数据卷会在更换中保留下来。

更新会保留存放数据库和上传文件的数据卷。按照文档中的升级路径操作,运行迁移,然后继续。

容器会被替换。命名卷保持不动,所以更换动的是代码,而不是你的收藏。
升级过程 v3.2 → v3.3
1

拉取新镜像

docker compose pull

代码
2

先备份

docker compose exec mysql mysqldump kollek > db.sql

安全
3

重建容器

docker compose up -d

卷已保留
4

启动时运行迁移

php artisan migrate --force

自动

备份是分内之事

三样东西,一起备份。

一份可靠的备份包括数据库、上传的文件和应用密钥。这事不光鲜,却非常值得做。

备份清单 已覆盖 3 / 3
数据库 db-data

每一件藏品、收藏、估值和历史记录。mysqldump 或卷快照都可以。

必备
上传的文件 storage-data

照片、文档和附件。恢复数据库时若缺少这些,会留下断裂的引用。

必备
应用密钥 .env → APP_KEY

KolleK 会对静态数据加密,因此没有这个密钥,加密的值就无法被读回。容易忘记,丢了很痛。

切勿跳过

目前还没有自带自动备份命令。为两个命名卷做快照,把 APP_KEY 妥善保存,其余交给标准的 Docker 工具即可。

准备好自己运行了吗?

一条有文档的路径覆盖安装、升级和备份。从 Docker Compose 开始,让每个部件都在你的视野之内。

阅读安装指南

如果符合以下情况,KolleK 可能(暂时)不适合你……

你想要零维护的托管服务,也永远不想碰 Docker。

你需要一个部署平台替你做出每一个运维决策。

在以下情况选择 KolleK……

你想要一条有文档、受支持的路径,在你选择的基础设施上运行完整应用。

一台小服务器、Docker Compose 和清晰的运维模型,对你来说是好消息。

当产品发生变化时,我们会更新此页面。 功能状态页面记录了那些无聊但重要的细节。