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
49 lines
1.2 KiB
YAML
49 lines
1.2 KiB
YAML
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:
|