diff --git a/Dockerfile b/Dockerfile index 9fd071d8..9ce1a488 100644 --- a/Dockerfile +++ b/Dockerfile @@ -101,6 +101,9 @@ php artisan db:seed --force || echo "Seeders failed or already run" # Start Horizon in the background php artisan horizon & +# Start the scheduler in the background +php artisan schedule:work & + # Start FrankenPHP exec frankenphp run --config /etc/caddy/Caddyfile EOF diff --git a/Dockerfile.dev b/Dockerfile.dev index 124ace16..41c44083 100644 --- a/Dockerfile.dev +++ b/Dockerfile.dev @@ -114,6 +114,9 @@ npm run dev & # Start Horizon (queue worker) in background php artisan horizon & +# Scheduler left off in dev on purpose; run schedule:work by hand when needed. +# php artisan schedule:work & + # Start FrankenPHP exec frankenphp run --config /etc/caddy/Caddyfile EOF diff --git a/docker/build/entrypoint.sh b/docker/build/entrypoint.sh deleted file mode 100644 index 151124eb..00000000 --- a/docker/build/entrypoint.sh +++ /dev/null @@ -1,51 +0,0 @@ -#!/bin/sh - -# Exit on any error -set -e - -# Check required Lemmy environment variables -if [ -z "$LEMMY_INSTANCE" ] || [ -z "$LEMMY_USERNAME" ] || [ -z "$LEMMY_PASSWORD" ] || [ -z "$LEMMY_COMMUNITY" ]; then - echo "ERROR: Missing required Lemmy configuration variables:" - echo " LEMMY_INSTANCE=${LEMMY_INSTANCE:-'(not set)'}" - echo " LEMMY_USERNAME=${LEMMY_USERNAME:-'(not set)'}" - echo " LEMMY_PASSWORD=${LEMMY_PASSWORD:-'(not set)'}" - echo " LEMMY_COMMUNITY=${LEMMY_COMMUNITY:-'(not set)'}" - echo "Please set all required environment variables before starting the application." - exit 1 -fi - -# Wait for database to be ready -echo "Waiting for database connection..." -until php /docker/wait-for-db.php > /dev/null 2>&1; do - echo "Database not ready, waiting..." - sleep 5 -done -echo "Database connection established." - -# Wait for Redis to be ready -echo "Waiting for Redis connection..." -until php /docker/wait-for-redis.php > /dev/null 2>&1; do - echo "Redis not ready, waiting..." - sleep 2 -done -echo "Redis connection established." - -# Substitute environment variables in .env file -echo "Configuring environment variables..." -envsubst < .env > .env.tmp && mv .env.tmp .env - -# Run migrations and initial setup -echo "Running database migrations..." -php artisan migrate --force - -echo "Dispatching initial sync job..." -php artisan tinker --execute="App\\Jobs\\SyncChannelPostsJob::dispatchForLemmy();" - -# Start all services in single container -echo "Starting web server, scheduler, and Horizon..." -php artisan schedule:work & -php artisan horizon & -php artisan serve --host=0.0.0.0 --port=8000 & - -# Wait for any process to exit -wait \ No newline at end of file diff --git a/docker/build/laravel.env b/docker/build/laravel.env deleted file mode 100644 index fab9ef82..00000000 --- a/docker/build/laravel.env +++ /dev/null @@ -1,59 +0,0 @@ -APP_NAME="Lemmy Poster" -APP_ENV=production -APP_KEY= -APP_DEBUG=true -APP_URL=http://localhost - -APP_LOCALE=en -APP_FALLBACK_LOCALE=en -APP_FAKER_LOCALE=en_US - -APP_MAINTENANCE_DRIVER=file - -PHP_CLI_SERVER_WORKERS=4 - -BCRYPT_ROUNDS=12 - -LOG_CHANNEL=stack -LOG_STACK=single -LOG_DEPRECATIONS_CHANNEL=null -LOG_LEVEL=error - -DB_CONNECTION=mysql -DB_HOST=mysql -DB_PORT=3306 -DB_DATABASE=$DB_DATABASE -DB_USERNAME=$DB_USERNAME -DB_PASSWORD=$DB_PASSWORD - -SESSION_DRIVER=redis -SESSION_LIFETIME=120 -SESSION_ENCRYPT=false -SESSION_PATH=/ -SESSION_DOMAIN=null - -BROADCAST_CONNECTION=log -FILESYSTEM_DISK=local -QUEUE_CONNECTION=redis - -CACHE_STORE=redis - -REDIS_CLIENT=phpredis -REDIS_HOST=redis -REDIS_PASSWORD=null -REDIS_PORT=6379 - -MAIL_MAILER=log -MAIL_SCHEME=null -MAIL_HOST=127.0.0.1 -MAIL_PORT=2525 -MAIL_USERNAME=null -MAIL_PASSWORD=null -MAIL_FROM_ADDRESS="hello@example.com" -MAIL_FROM_NAME="${APP_NAME}" - -# LEMMY SETTINGS -LEMMY_INSTANCE= -LEMMY_USERNAME= -LEMMY_PASSWORD= -LEMMY_COMMUNITY= diff --git a/docker/build/wait-for-db.php b/docker/build/wait-for-db.php deleted file mode 100644 index 2427fa84..00000000 --- a/docker/build/wait-for-db.php +++ /dev/null @@ -1,14 +0,0 @@ -#!/usr/bin/env php -connect('redis', 6379); - echo 'Connected'; - exit(0); -} catch (Exception $e) { - exit(1); -} \ No newline at end of file