Koha 介绍与选型指南

开源图书馆管理系统 Koha(Perl ILS)认知篇:项目定位与毛利语命名、26.05/25.11/25.05/24.11 版本线与半年发布节奏、Plack+Apache+MariaDB+Zebra/Elasticsearch 多组件架构、功能域全景、官方 koha-docker 快速开始、适用场景与限制,及与 Evergreen/FOLIO/inlisp 的量化选型对比(来源均标注查询日期 2026-11-01)。

KohaKohaPerl 语言知识库自托管2026/11/01

Koha 介绍与选型指南

目标:给出开源图书馆管理系统 Koha(Perl ILS)的完整认知与选型依据——项目定位、版本线与发布节奏、组件架构、功能域全景、最小部署入口,以及与 Evergreen/FOLIO/inlisp 的选型对比。本篇为联网溯源认知篇,全部事实标注来源与查询日期(2026-11-01)。

一、环境信息

本篇为认知篇(介绍与选型),全部事实来自公开渠道联网溯源,不含本地部署实测。关键信息源与查询日期如下:

信息源用途查询日期
koha-community.org/about/项目定位与简介2026-11-01
download.koha-community.org 目录列表各版本源码包与发布日期2026-11-01
debian.koha-community.org/koha/dists/APT 仓库版本线(stable/oldstable 等)2026-11-01
GitLab koha-community/docker/koha-docker README官方容器镜像与多服务编排说明2026-11-01
img.shields.io/github/stars/Koha-community/KohaGitHub 星数徽章2026-11-01
evergreen-ils.org、folio.org、inlisp.org同类项目定位2026-11-01

目标读者环境假设:一台可运行 Docker Compose 的 Linux 服务器(如 Ubuntu 22.04/24.04),为图书馆或资料室自建业务系统做选型评估。

二、软件概述

Koha 是 Koha Community 开发的开源图书馆管理系统(ILS,Integrated Library System),官方站点自述为「the first free software library automation package」——第一个自由软件的图书馆自动化包,在全球范围内被各类图书馆使用,由不断增长的用户社区共同主导功能演进(来源:koha-community.org/about/,查询日期 2026-11-01)。项目名「koha」在毛利语中意为「礼物」,源于其诞生地新西兰。

技术上 Koha 以 Perl 为主体实现业务逻辑,运行在 Linux + Apache + MariaDB/MySQL 的经典栈上,检索层支持 Zebra 与 Elasticsearch 两种引擎,采用 GPLv3 开源许可(来源:Koha-community/Koha 仓库 LICENSE 与官方文档,查询日期 2026-11-01)。

版本节奏为每年两版(5 月、11 月,版本号即 年.月)。截至查询日期 2026-11-01:

版本线角色最新补丁证据
26.05stable(当前稳定)26.05.05(2026-10-29 发布)download.koha-community.org 目录列表;koha-latest.tar.gz Last-Modified 2026-10-29
25.11oldstable25.11.10同上目录列表
25.05oldoldstable25.05.16同上目录列表
24.11仍在维护24.11.21同上目录列表

APT 仓库 debian.koha-community.org/koha/dists/ 同步维护 stable→26.05、oldstable→25.11、oldoldstable→25.05 及 24.11 组件(查询日期 2026-11-01)。官方 Docker 镜像 koha/koha 为每个维护版本发布多架构(amd64/arm64)镜像,并提供 stable 滚动标签始终指向当前稳定版(来源:koha-docker README,查询日期 2026-11-01)。GitHub 星数 597(shields.io 徽章,查询日期 2026-11-01)。

三、核心架构

Koha 采用「单实例多租户」架构:一台服务器可以创建多个相互隔离的图书馆实例(instance),每个实例拥有独立的数据库、配置目录(/etc/koha/sites/<实例>/koha-conf.xml)、索引目录与日志目录,通过 Apache 虚拟主机区分 OPAC(读者接口)与 Intranet(馆员工作界面)两个站点。

主要组件分工(来源:官方 koha-docker 编排与 Debian 包结构说明,查询日期 2026-11-01):

组件角色说明
Plack/Starman应用服务器Koha 业务逻辑(Perl/Mojolicious::Lite 混合)常驻进程,OPAC 与 Intranet 的后端
Apache 2.4反向代理/静态站点按虚拟主机把 8080/8081 端口流量转发到 Plack,mpm-itk 按实例用户降权
MariaDB/MySQL主数据库书目、借阅、读者、流通规则等全部业务数据
Zebra 或 Elasticsearch检索引擎书目/权威记录索引,二选一;Elasticsearch 为官方容器栈默认
Memcached缓存系统参数、会话等热数据缓存
background jobs worker异步任务default 与 long_tasks 两个队列,处理批量邮件、编目修改等
cron计划任务到期通知、罚款、数据清理等 cronjobs/*.pl 脚本
SIP2 / Z39.50/SRU / NCIP / OAI-PMH / REST API对外协议自助借还机、馆际互查、联合编目、元数据收割、程序化接口

官方容器镜像基于 Debian bookworm,通过 koha-core 元包安装(与裸机安装的 koha-common 同源的 koha-* 管理命令族,但剔除 RabbitMQ、memcached、Apache、Zebra 等可独立编排的依赖,来源:koha-docker README,查询日期 2026-11-01)。

四、功能特性

Koha 覆盖图书馆业务全流程,核心功能域(来源:koha-community.org 功能页与官方维基,查询日期 2026-11-01):

  • 采编编目:MARC21 与 UNIMARC 双标准框架,权威记录(规范文档)控制,Z39.50/SRU 套录,批量导入导出;
  • 流通管理:借还、续借、预借(hold)、过期与罚款规则引擎、自助借还(SIP2)对接;
  • 读者服务:OPAC 检索(分面、书脊、封面、列表、征购建议)、读者账户与隐私控制;
  • 连续出版物:期刊预测与签收(serials);
  • 采访与资产:订购、到馆、供应商、预算、发票核销;
  • 统计报表:内置 SQL 报表工具(reports)与 Circulation/Statistics 模块;
  • 多馆多分支:单实例内多分馆(branch)、跨馆预借与归还路由;
  • 国际化:多语言界面(koha-translate 维护语言包),中文等语言由社区翻译;
  • 开放接口:REST API(OpenAPI 规范)、OAI-PMH 收割、NCIP(馆际协议);
  • 插件体系:plugin hook 机制扩展界面与流程。

五、快速开始(最小可用示例)

官方推荐的容器化最小路径是使用 koha-docker 仓库自带的多服务 Compose 栈(来源:koha-docker README,查询日期 2026-11-01):

git clone https://gitlab.com/koha-community/docker/koha-docker.git --depth 1 --branch main
cd koha-docker
docker compose --profile es up -d

一次性 init 服务会自动创建实例(数据库、koha-create、语言包),随后访问 Intranet 站点完成 web 安装器与 onboarding(建馆、建超管账号)即可使用。OPAC 与 Intranet 默认分别监听 8080/8081,主机名 kohadev.myDNSname.org / kohadev-intra.myDNSname.org。

本专栏的《Koha 26.05 Docker Compose 部署指南》对该官方栈做了逐服务落地实测(含端口、子网、持久化与安装器全程回显),生产落地请直接参照该篇。

六、适用场景与限制

适用:

  • 公共图书馆、学校图书馆、机构资料室等需要完整 ILS 业务闭环(采编-流通-检索-统计)的场景;
  • 多分馆/联盟场景:单实例多分支 + 跨馆预借,或一机多实例隔离多馆;
  • 需要 MARC 标准编目、Z39.50 馆际互查、SIP2 自助借还等图书馆行业协议的场景;
  • 有专职或兼职 Linux 运维、接受 Perl/MariaDB 技术栈的自建(self-hosted)用户。

限制与成本:

  • 组件多(Plack、Apache、检索引擎、缓存、worker、cron),最小可用栈约 9 个服务进程,资源与运维复杂度显著高于单容器应用;
  • 业务数据模型重(数百张表、数百项系统参数),上手与培训成本高;
  • 检索引擎二选一:Elasticsearch 需要独立 JVM 资源(官方容器栈默认),Zebra 轻量但运维工具更老;
  • 升级跟随半年版本线,需按官方 schema 升级流程(koha-upgrade-schema)逐版本推进。

七、同类选型对比

开源图情领域常见方案对比(各项目定位来源:各自官网,查询日期 2026-11-01;Koha 量化数据来源见上文各表):

维度KohaEvergreenFOLIOinlisp
定位通用 ILS,「第一个自由软件图书馆自动化包」联盟型开源 ILS(公共图书馆联盟为主)新一代图书馆服务平台(LSP,微服务化)轻量开源 ILS(中文社区较新)
主技术栈Perl + MariaDB/MySQL + ApachePerl + C + JavaScript + PostgreSQLJava(Spring)微服务 + PostgreSQLPython(FastAPI)+ Vue
检索Zebra 或 Elasticsearch自研检索(PostgreSQL 全文)ElasticsearchElasticsearch
版本节奏每年 2 版(26.05/25.11…),4 条维护线每年约 2 版按模块独立发版不定期
社区热度(可查证)GitHub 597 星(shields.io,2026-11-01);商业支持方全球数百家北美公共图书馆联盟为主学术图书馆联盟(Big Ten 等)主导新兴项目,规模较小
协议支持MARC21/UNIMARC、SIP2、Z39.50/SRU、NCIP、OAI-PMH、RESTMARC21、SIP2、Z39.50MARC、REST 为主MARC21、REST
部署形态Debian 包 / 官方 Docker Compose 多服务栈包/容器,联盟托管为主k8s/微服务,公有云 SaaS 可选Docker Compose

选型建议:

  • 需要完整 ILS 且社区/文档/商业支持最成熟 → Koha(全球部署量最大的开源 ILS,官方容器栈成熟);
  • 北美公共图书馆联盟、重视开源联盟治理 → Evergreen;
  • 大型学术图书馆、计划上微服务/云原生 LSP → FOLIO(实施复杂度最高);
  • 中文小馆、只求轻量借还+编目、接受功能子集 → inlisp;
  • 注意区分:Koha/Evergreen/FOLIO/inlisp 是「图书馆管理系统(ILS)」,与机构知识库(DSpace 等)职责不同,后者参见《DSpace 介绍与选型指南》。

参考链接

Koha 介绍与选型指南 - Quzuo