Skip to content
Snippets Groups Projects
  • Sebastian Kehr's avatar
    refs #16923 [master-v5] docker development consolidation · ecb94e9d
    Sebastian Kehr authored and Dorian Merz's avatar Dorian Merz committed
    * no more usage of slow vufind-php image for various containers
    * use stock docker library images where possible for faster startup
    * build custom images for php and composer only to include xdebug and required extensions
    * provide and leverage custom entrypoint shell scripts for most containers
    * inject environment variables defined in docker-env.*.yml files within entrypoints
    * place environment variables defaults in in docker-env.0.finc.yml
    * place composer and npm caches in git-ignored subdirectories of project root directory
    * gracefully terminate all container processes (especially grunt and mail) for faster shutdown
    * let versions of php and mariadb equal those in current live systems
    * let container-written files have uid/gid of project root directory by default
    * forward exposed container ports to non-standard ports on host system
    * allow to override uid/gid of written files as well as host ports via environment variables
    
    * specify exact autoconfig version to install
    * avoid recursive call to chown in env entrypoint
    * drop unnecessary argument when calling grunt
    
    * report all errors (including notices, deprecation messages etc.)
    ecb94e9d
Code owners
Assign users and groups as approvers for specific file changes. Learn more.
entrypoint.sh 1.04 KiB
#!/usr/bin/env sh
# Copyright (C) 2020  Leipzig University Library
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program.  If not, see <http://www.gnu.org/licenses/>.
#
# @author  Sebastian Kehr <kehr@ub.uni-leipzig.de>
# @license https://opensource.org/licenses/GPL-3.0 GNU GPLv3

until ! ping -c1 env >/dev/null 2>&1; do :; done
set -a; [ -f ./data/docker/env/mail ] && . ./data/docker/env/mail; set +a

trap 'supervisorctl stop dovecot && supervisorctl stop postfix && exit 0' TERM
/docker/init "$@" &
while true; do :; done