Skip to content
Snippets Groups Projects
  • Sebastian Kehr's avatar
    refs #17116 [master-v5] Docker fixups · eea72d69
    Sebastian Kehr authored and Dorian Merz's avatar Dorian Merz committed
    * avoid necessity of special chars in autoconfig specific environment variable names
    
    * assure env file is generated for mail container
    * let generated searches.ini file contain an empty index shards section by default
    
    * ignore data folder completely
    * use updated version of vufind-httpd image
    * let env container write with uid:gid of project root
    * let composer event handlers being called with correct uid:gid
    * add xsl and dom php extensions
    
    * avoid high cpu usage by endless loops
    eea72d69
Code owners
Assign users and groups as approvers for specific file changes. Learn more.
docker-compose.yml 2.33 KiB
version: '2.4'

services:
  env:
    image: linkyard/yaml:1.1.1
    volumes:
      - .:/usr/local/vufind:rw
    working_dir: /usr/local/vufind
    entrypoint: ["devops/docker/env/entrypoint.sh"]

  composer:
    build: devops/docker/composer
    working_dir: /usr/local/vufind
    volumes:
      - .:/usr/local/vufind:rw
      - ${SSH_AUTH_SOCK}:/ssh-agent
      - $HOME/.ssh/known_hosts:/etc/ssh/ssh_known_hosts
    depends_on:
      - env
    entrypoint: ["devops/docker/composer/entrypoint.sh"]
    command: ["install"]

  php:
    build: devops/docker/php
    working_dir: /usr/local/vufind
    volumes:
      - ./:/usr/local/vufind
    depends_on:
      - env
      - db
    entrypoint: ["devops/docker/php/entrypoint.sh"]
    command: ["php-fpm"]

  httpd:
    image: ubleipzig/vufind-httpd:2.4-5
    ports:
      - 127.0.0.1:${HTTPD_PORT:-11100}:80
    volumes:
      - ./:/usr/local/vufind:ro
    depends_on:
      - php

  db:
    image: mariadb:10.3.17
    ports:
      - 127.0.0.1:${DB_PORT:-11101}:3306
    working_dir: /usr/local/vufind
    volumes:
      - ./:/usr/local/vufind:rw
      - db-data:/var/lib/mysql
    depends_on:
      - env
    entrypoint: ["devops/docker/db/entrypoint.sh"]
    command: [
      "mysqld",
      "--character-set-server=utf8mb4",
      "--collation-server=utf8mb4_unicode_ci"
    ]

  mail:
    image: useltmann/mailcollect:8-1
    working_dir: /usr/local/vufind
    ports:
      - 127.0.0.1:${SMTP_PORT:-11102}:25
      - 127.0.0.1:${IMAP_PORT:-11103}:143
    volumes:
      - mail-data:/home/dev/Maildir:z
      - ./:/usr/local/vufind:rw
    depends_on:
      - env