Add library/: one-command Dockerized Koha home library (WIP)
Compose stack (MariaDB + Koha built from the Koha project's Debian packages), headless bootstrap replacing the web installer, seeded item types and LoC Z39.50 server, and an install.sh that installs Docker, generates passwords and waits for the site. End-to-end testing in progress. Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_013wi3ZSot4XbUViwRFgLpRf
This commit is contained in:
@@ -0,0 +1,48 @@
|
||||
name: library
|
||||
|
||||
services:
|
||||
db:
|
||||
image: mariadb:10.11
|
||||
container_name: library-db
|
||||
restart: unless-stopped
|
||||
environment:
|
||||
MARIADB_ROOT_PASSWORD: ${DB_ROOT_PASSWORD}
|
||||
MARIADB_DATABASE: koha_library
|
||||
MARIADB_USER: koha_library
|
||||
MARIADB_PASSWORD: ${DB_PASSWORD}
|
||||
command: ["--character-set-server=utf8mb4", "--collation-server=utf8mb4_unicode_ci", "--innodb-buffer-pool-size=128M"]
|
||||
volumes:
|
||||
- db-data:/var/lib/mysql
|
||||
healthcheck:
|
||||
test: ["CMD", "healthcheck.sh", "--connect", "--innodb_initialized"]
|
||||
interval: 10s
|
||||
timeout: 5s
|
||||
retries: 20
|
||||
|
||||
koha:
|
||||
build:
|
||||
context: ./koha
|
||||
args:
|
||||
KOHA_SUITE: ${KOHA_SUITE:-stable}
|
||||
image: library-koha:local
|
||||
container_name: library-koha
|
||||
restart: unless-stopped
|
||||
depends_on:
|
||||
db:
|
||||
condition: service_healthy
|
||||
environment:
|
||||
TZ: ${TZ:-UTC}
|
||||
KOHA_DB_HOST: db
|
||||
KOHA_DB_PASS: ${DB_PASSWORD}
|
||||
KOHA_ADMIN_USER: ${ADMIN_USER:-admin}
|
||||
KOHA_ADMIN_PASS: ${ADMIN_PASSWORD}
|
||||
KOHA_LIBRARY_NAME: ${LIBRARY_NAME:-My Library}
|
||||
ports:
|
||||
- "${OPAC_PORT:-8080}:80"
|
||||
- "${STAFF_PORT:-8081}:8081"
|
||||
volumes:
|
||||
- koha-data:/var/lib/koha
|
||||
|
||||
volumes:
|
||||
db-data:
|
||||
koha-data:
|
||||
Reference in New Issue
Block a user