Files
imail/docker/entrypoint.sh
idevakk 6fd6b5dc8a
Some checks failed
linter / quality (push) Has been cancelled
tests / ci (push) Has been cancelled
fix: make migrations non-fatal in entrypoint to prevent container restart loops
2026-03-10 00:07:16 +05:30

35 lines
1.1 KiB
Bash

#!/bin/sh
set -e
echo "Starting iMail container initialization..."
# Ensure storage directories exist
mkdir -p /var/www/html/storage/framework/cache/data
mkdir -p /var/www/html/storage/framework/sessions
mkdir -p /var/www/html/storage/framework/views
mkdir -p /var/www/html/storage/logs
mkdir -p /var/www/html/storage/app/public
mkdir -p /var/www/html/bootstrap/cache
# Fix permissions
chown -R www-data:www-data /var/www/html/storage
chown -R www-data:www-data /var/www/html/bootstrap/cache
# Cache configuration, routes, views, events
echo "Caching configuration and routes..."
php artisan config:cache
php artisan route:cache
php artisan view:cache
php artisan event:cache
# Create storage symlink
php artisan storage:link --force
# Run migrations (non-fatal — don't crash the container if a migration fails)
echo "Running migrations..."
php artisan migrate --force || echo "WARNING: Migrations failed. The container will continue starting. Please check the migration error above and fix manually."
echo "Initialization complete. Starting Supervisord..."
# Execute supervisord in the foreground
exec /usr/bin/supervisord -c /etc/supervisor/conf.d/supervisord.conf