set up production configs

This commit is contained in:
D. Scott Boggs 2025-05-11 09:26:31 -04:00
parent 0a039cbb29
commit 38a3f2566b

View file

@ -1,48 +1,56 @@
version: "3.9"
services: services:
koha: koha:
# image: teogramm/koha:24.11 # image: teogramm/koha:24.11
build: . build: .
ports:
- 8080:8080
- 8081:8081
networks: networks:
- koha - koha
- public # network which connects to the reverse proxy
cap_add: cap_add:
- DAC_READ_SEARCH - DAC_READ_SEARCH
- SYS_NICE - SYS_NICE
env_file: ./.env.prod
environment: environment:
MYSQL_SERVER: db MYSQL_SERVER: koha-db
MYSQL_USER: koha MYSQL_USER: koha
MYSQL_PASSWORD: example # MYSQL_PASSWORD: # set in .env.prod
DB_NAME: koha DB_NAME: koha
MEMCACHED_SERVERS: memcached:11211 MEMCACHED_SERVERS: koha-memcached:11211
MB_HOST: rabbitmq MB_HOST: koha-rabbitmq
depends_on: depends_on:
- db - db
- rabbitmq - rabbitmq
- memcached - memcached
labels:
traefik.http.routers.koha-opac.rule: Host(`koha.techwork.zone`)
traefik.http.routers.koha-opac.tls.certresolver: letsencrypt_standalone
traefik.http.routers.koha-opac.service: koha-opac-service
traefik.http.routers.koha-admin.rule: Host(`admin.koha.techwork.zone`)
traefik.http.routers.koha-admin.tls.certresolver: letsencrypt_standalone
traefik.http.routers.koha-admin.service: koha-admin-service
traefik.http.services.koha-opac-service.load-balancer.server.port: 8080
traefik.http.services.koha-admin-service.load-balancer.server.port: 8081
rabbitmq: koha-rabbitmq:
image: docker.io/rabbitmq:3 image: docker.io/rabbitmq:3
volumes: volumes:
- ./rabbitmq_plugins:/etc/rabbitmq/enabled_plugins - ./rabbitmq_plugins:/etc/rabbitmq/enabled_plugins
networks: networks:
- koha - koha
db: koha-db:
image: docker.io/mariadb:11 image: docker.io/mariadb:11
volumes: volumes:
- mariadb-koha:/var/lib/mysql - ./mounts/database:/var/lib/mysql
env_file: ./.env.prod
environment: environment:
MARIADB_RANDOM_ROOT_PASSWORD: true% MARIADB_RANDOM_ROOT_PASSWORD: true
MARIADB_DATABASE: koha MARIADB_DATABASE: koha
MARIADB_USER: koha MARIADB_USER: koha
MARIADB_PASSWORD: example # MARIADB_PASSWORD: # set in .env.prod
networks: networks:
- koha - koha
memcached: koha-memcached:
image: docker.io/memcached image: docker.io/memcached
networks: networks:
- koha - koha
@ -52,3 +60,4 @@ volumes:
networks: networks:
koha: koha:
internal: true