#!/bin/bash if [[ "$1" == apache2* ]] || [ "$1" == php-fpm ]; then if [ "$(id -u)" = '0' ]; then case "$1" in apache2*) user="${APACHE_RUN_USER:-www-data}" group="${APACHE_RUN_GROUP:-www-data}" ;; *) # php-fpm user='www-data' group='www-data' ;; esac else user="$(id -u)" group="$(id -g)" fi # Custom folders for sessions chown ${user}:${group} /sessions /var/nginx/client_body_temp if ! [ -e index.php -a -e url.php ]; then echo >&2 "phpMyAdmin not found in $PWD - copying now..." if [ "$(ls -A)" ]; then echo >&2 "WARNING: $PWD is not empty - press Ctrl+C now if this is an error!" ( set -x; ls -A; sleep 10 ) fi tar --create \ --file - \ --one-file-system \ --directory /usr/src/phpmyadmin \ --owner "$user" --group "$group" \ . | tar --extract --file - echo >&2 "Complete! phpMyAdmin has been successfully copied to $PWD" mkdir -p tmp; \ chmod -R 777 tmp; \ fi if [ ! -f /etc/phpmyadmin/config.secret.inc.php ]; then cat > /etc/phpmyadmin/config.secret.inc.php < $PHP_INI_DIR/conf.d/phpmyadmin-hide-php-version.ini fi UPLOAD_LIMIT_INI_FILE="$PHP_INI_DIR/conf.d/phpmyadmin-upload-limit.ini" if [ ! -z "${UPLOAD_LIMIT}" ]; then echo "Adding the custom upload limit." echo -e "upload_max_filesize = $UPLOAD_LIMIT\npost_max_size = $UPLOAD_LIMIT\n" > $UPLOAD_LIMIT_INI_FILE fi if [ ! -z "${PMA_CONFIG_BASE64}" ]; then echo "Adding the custom config.inc.php from base64." echo "${PMA_CONFIG_BASE64}" | base64 -d > /etc/phpmyadmin/config.inc.php fi if [ ! -z "${PMA_USER_CONFIG_BASE64}" ]; then echo "Adding the custom config.user.inc.php from base64." echo "${PMA_USER_CONFIG_BASE64}" | base64 -d > /etc/phpmyadmin/config.user.inc.php fi function get_docker_secret() { local env_var="${1}" local env_var_file="${env_var}_FILE" # Check if the variable with name $env_var_file (which is $PMA_PASSWORD_FILE for example) # is not empty and export $PMA_PASSWORD as the password in the Docker secrets file if [[ -n "${!env_var_file}" ]]; then export "${env_var}"="$(cat "${!env_var_file}")" fi } get_docker_secret PMA_PASSWORD get_docker_secret MYSQL_ROOT_PASSWORD get_docker_secret MYSQL_PASSWORD get_docker_secret PMA_HOSTS get_docker_secret PMA_HOST exec "$@"