unillett/catimaCATIMA是一个Web应用,用于通过定义文档的数据模式轻松快速地创建结构化文档的在线目录。每个文档由多个数据字段描述,代表特定对象,可创建多种不同类型的对象。文档内容用于建立不同对象间的链接,同时提供集成搜索功能和每种对象类型的列表视图。
对于某些应用场景,CATIMA可替代FileMaker等数据库,但不提供许多高级功能。其设计目标是定义文档结构后即可开箱即用,有意提供相对较少的个性化选项,但允许创建与目录内容一起的自定义内容页面。
适用于需要快速搭建简单在线数据库的场景,适合替代基础数据库功能,尤其适合不需要高级数据库特性但希望快速设置和使用的用户。例如:小型团队的文档管理、简单物品目录、结构化信息收集与展示等场景。
需安装Docker环境。
复制并重命名环境变量示例文件:
bashcp example.env .env
默认值适用于本地开发,如有需要可修改。
复制并重命名Docker Compose覆盖配置文件:
bashcp docker-compose.override.yml.dev docker-compose.override.yml
默认值适用于本地开发,如有需要可修改。
将catima.lan指向Docker主机IP。
在项目根目录执行以下命令构建并启动所有容器:
bashdocker-compose up # 如需后台运行并静默日志,添加-d参数
等待所有容器创建完成并就绪(Puma启动并监听连接),设置脚本会自动配置应用。Redis和Postgres的数据通过Docker命名卷持久化,可通过以下命令管理卷:
docker volume lsdocker volume rm volume_name通过以下链接访问主应用: [***]
默认管理员账号:
通过以下链接访问邮件: [***]
或通过JSON格式查看邮件: [***]
复制并重命名环境变量示例文件:
bashcp example.env .env
生产环境需修改默认值,默认配置不适用于生产环境。
复制并重命名Docker Compose覆盖配置文件:
bashcp docker-compose.override.yml.prod docker-compose.override.yml
如有需要可修改,默认值适用于生产环境。
复制并重命名以下配置文件:
bashcp config/domains.example.yml config/domains.yml cp config/geo_layers.example.yml config/geo_layers.yml cp config/restricted_robots.example.yml config/restricted_robots.yml
可根据需求修改值,应用运行中修改后需重启容器。
构建并启动生产环境容器:
bashdocker compose up -d
配置反向代理,将URL映射到端口8989。
运行完整测试套件:
bashdocker exec -it -e NO_COVERAGE=1 catima-app bin/rails test
运行单个测试(指定行号):
bashdocker exec -it -e NO_COVERAGE=1 catima-app bin/rails test path/to/file:line_number
无覆盖率测试(提升性能):在docker exec参数中添加-e NO_COVERAGE=1
查看集成测试运行:在docker exec参数中添加-e HEADLESS=0,然后通过以下方式访问:
运行API请求规范并生成API文档:
bashdocker exec -it catima-app rails swag:run
API文档未版本化,需在部署时添加到项目中。
GitHub Actions工作流基于以下事件生成Docker镜像标签:
推送到development分支:
{service}-dev-latest{service}-stage-latest{service}-stage-<sha>-<timestamp>(不可变)推送到master分支:
{service}-latest推送Git标签:
{service}-vX.Y.Z(不可变)每周定时任务:
{service}-stage-<sha>-<timestamp>(不可变){service}-vX.Y.Z-<sha>-<timestamp>(不可变)使用Bugsnag进行错误跟踪。
项目的Helm图表位于[***]catima目录中。
探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录认证访问私有仓库
在 Linux 系统配置镜像服务
在 Docker Desktop 配置镜像
Docker Compose 项目配置
Kubernetes 集群配置 Containerd
K3s 轻量级 Kubernetes 镜像加速
VS Code Dev Containers 配置
MacOS OrbStack 容器配置
在宝塔面板一键配置镜像
Synology 群晖 NAS 配置
飞牛 fnOS 系统配置镜像
极空间 NAS 系统配置服务
爱快 iKuai 路由系统配置
绿联 NAS 系统配置镜像
QNAP 威联通 NAS 配置
Podman 容器引擎配置
HPC 科学计算容器配置
ghcr、Quay、nvcr 等镜像仓库
无需登录使用专属域名
需要其他帮助?请查看我们的 常见问题Docker 镜像访问常见问题解答 或 提交工单
免费版仅支持 Docker Hub 访问,不承诺可用性和速度;专业版支持更多镜像源,保证可用性和稳定速度,提供优先客服响应。
专业版支持 docker.io、gcr.io、ghcr.io、registry.k8s.io、nvcr.io、quay.io、mcr.microsoft.com、docker.elastic.co 等;免费版仅支持 docker.io。
当返回 402 Payment Required 错误时,表示流量已耗尽,需要充值流量包以恢复服务。
通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。
先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。
使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。
来自真实用户的反馈,见证轩辕镜像的优质服务