#!/bin/bash set -e # if we're linked to MySQL, and we're using the root user, and our linked # container has a default "root" password set up and passed through... :) : ${DB_USERNAME:=root} if [ "$DB_USERNAME" = 'root' ]; then : ${DB_PASSWORD:=$MYSQL_ENV_MYSQL_ROOT_PASSWORD} fi echo "DB_USERNAME=$DB_USERNAME" >> .env echo "DB_PASSWORD=$DB_PASSWORD" >> .env echo "DB_HOST=$DB_HOST" >> .env echo "MAIL_DRIVER=$MAIL_DRIVER" >> .env echo "MAIL_PORT=$MAIL_PORT" >> .env echo "MAIL_HOST=$MAIL_HOST" >> .env echo "MAIL_USERNAME=$MAIL_USERNAME" >> .env echo "MAIL_PASSWORD=$MAIL_PASSWORD" >> .env echo "MAIL_FROM_ADDRESS=$MAIL_FROM_ADDRESS" >> .env echo "MAIL_FROM_NAME=$MAIL_FROM_NAME" >> .env if [ ! -d /var/www/app/storage ]; then cp -Rp /var/www/app/docker-backup-storage /var/www/app/storage else IN_STORAGE_BACKUP="$(ls /var/www/app/docker-backup-storage/)" for path in $IN_STORAGE_BACKUP; do if [ ! -e "/var/www/app/storage/$path" ]; then cp -Rp "/var/www/app/docker-backup-storage/$path" "/var/www/app/storage/" fi done fi if [ ! -d /var/www/app/public/logo ]; then cp -Rp /var/www/app/docker-backup-public-logo /var/www/app/public/logo else IN_LOGO_BACKUP="$(ls /var/www/app/docker-backup-public-logo/)" for path in $IN_LOGO_BACKUP; do if [ ! -e "/var/www/app/public/logo/$path" ]; then cp -Rp "/var/www/app/docker-backup-public-logo/$path" "/var/www/app/public/logo/" fi done fi chown www-data:www-data /var/www/app/.env # widely inspired from https://github.com/docker-library/wordpress/blob/c674e9ceedf582705e0ad8487c16b42b37a5e9da/fpm/docker-entrypoint.sh#L128 TERM=dumb php -- "$DB_HOST" "$DB_USERNAME" "$DB_PASSWORD" "$DB_DATABASE" <<'EOPHP' getMessage(). "\n"); if (--$maxTries <= 0) { exit(1); } sleep(3); } } while (true); EOPHP #php artisan optimize --force #php artisan migrate --force #if [ ! -e "/var/www/app/is-seeded" ]; then #php artisan db:seed --force #touch "/var/www/app/is-seeded" #fi echo 'start' exec "$@"