mirror of
https://github.com/danielbrendel/hortusfox-web.git
synced 2026-05-07 14:19:45 -05:00
#57 Error handling & env configuration
This commit is contained in:
+8
-9
@@ -7,15 +7,8 @@ services:
|
||||
- "8080:80"
|
||||
environment:
|
||||
APP_DEBUG: "true"
|
||||
APP_BASEDIR: ""
|
||||
APP_SESSION: "true"
|
||||
APP_LANG: "en"
|
||||
APP_WORKSPACE: "My home"
|
||||
APP_ENABLESCROLLER: "true"
|
||||
APP_OVERLAYALPHA: "null"
|
||||
APP_ENABLECHAT: "false"
|
||||
DB_ENABLE: "true"
|
||||
DB_DRIVER: "mysql"
|
||||
APP_WORKSPACE: "My plant home"
|
||||
DB_HOST: db
|
||||
DB_PORT: 3306
|
||||
DB_DATABASE: hortusfox
|
||||
@@ -23,7 +16,13 @@ services:
|
||||
DB_CHARSET: "utf8mb4"
|
||||
DB_USER: root
|
||||
DB_PASSWORD: my-secret-pw
|
||||
# Add other environment variables here as needed
|
||||
SMTP_FROMNAME: "Test"
|
||||
SMTP_FROMADDRESS: "test@domain.tld"
|
||||
SMTP_HOST: ""
|
||||
SMTP_PORT: 587
|
||||
SMTP_USERNAME: ""
|
||||
SMTP_PASSWORD: ""
|
||||
SMTP_ENCRYPTION: tls
|
||||
depends_on:
|
||||
- db
|
||||
|
||||
|
||||
+61
-1
@@ -16,11 +16,68 @@ configure_php_error_reporting() {
|
||||
echo 'display_errors = Off' >> /usr/local/etc/php/conf.d/errors.ini
|
||||
else
|
||||
# Show all errors if APP_DEBUG is true
|
||||
echo 'error_reporting = E_ALL' > /usr/local/etc/php/conf.d/errors.ini
|
||||
echo 'error_reporting = E_ALL & ~E_DEPRECATED & ~E_STRICT' > /usr/local/etc/php/conf.d/errors.ini
|
||||
echo 'display_errors = On' >> /usr/local/etc/php/conf.d/errors.ini
|
||||
fi
|
||||
}
|
||||
|
||||
# Function to create the .env file
|
||||
create_environment_file() {
|
||||
# Remove if already exists
|
||||
rm -f "/var/www/html/.env"
|
||||
|
||||
# App settings
|
||||
echo "APP_NAME=\"HortusFox\"" >> /var/www/html/.env
|
||||
echo "APP_DEBUG=$APP_DEBUG" >> /var/www/html/.env
|
||||
echo "APP_BASEDIR=\"\"" >> /var/www/html/.env
|
||||
echo "APP_SESSION=true" >> /var/www/html/.env
|
||||
echo "APP_LANG=\"en\"" >> /var/www/html/.env
|
||||
echo "APP_WORKSPACE=\"$APP_WORKSPACE\"" >> /var/www/html/.env
|
||||
echo "APP_ENABLESCROLLER=true" >> /var/www/html/.env
|
||||
echo "APP_OVERLAYALPHA=null" >> /var/www/html/.env
|
||||
echo "APP_ENABLECHAT=true" >> /var/www/html/.env
|
||||
echo "APP_ONLINEMINUTELIMIT=5" >> /var/www/html/.env
|
||||
echo "APP_SHOWCHATONLINEUSERS=false" >> /var/www/html/.env
|
||||
echo "APP_SHOWCHATTYPINGINDICATOR=false" >> /var/www/html/.env
|
||||
echo "APP_OVERDUETASK_HOURS=10" >> /var/www/html/.env
|
||||
echo "APP_CRONPW=null" >> /var/www/html/.env
|
||||
echo "APP_CRONJOB_MAILLIMIT=5" >> /var/www/html/.env
|
||||
echo "APP_GITHUB_URL=\"https://github.com/danielbrendel/hortusfox-web\"" >> /var/www/html/.env
|
||||
echo "APP_SERVICE_URL=\"https://www.hortusfox.com\"" >> /var/www/html/.env
|
||||
echo "APP_ENABLEHISTORY=true" >> /var/www/html/.env
|
||||
echo "APP_HISTORY_NAME=\"History\"" >> /var/www/html/.env
|
||||
|
||||
# Photo resize factors
|
||||
echo "PHOTO_RESIZE_FACTOR_DEFAULT=1.0" >> /var/www/html/.env
|
||||
echo "PHOTO_RESIZE_FACTOR_1=0.5" >> /var/www/html/.env
|
||||
echo "PHOTO_RESIZE_FACTOR_2=0.4" >> /var/www/html/.env
|
||||
echo "PHOTO_RESIZE_FACTOR_3=0.4" >> /var/www/html/.env
|
||||
echo "PHOTO_RESIZE_FACTOR_4=0.3" >> /var/www/html/.env
|
||||
echo "PHOTO_RESIZE_FACTOR_5=0.2" >> /var/www/html/.env
|
||||
|
||||
# Database settings
|
||||
echo "DB_ENABLE=true" >> /var/www/html/.env
|
||||
echo "DB_HOST=$DB_HOST" >> /var/www/html/.env
|
||||
echo "DB_USER=$DB_USERNAME" >> /var/www/html/.env
|
||||
echo "DB_PASSWORD=\"$DB_PASSWORD\"" >> /var/www/html/.env
|
||||
echo "DB_PORT=3306" >> /var/www/html/.env
|
||||
echo "DB_DATABASE=$DB_DATABASE" >> /var/www/html/.env
|
||||
echo "DB_DRIVER=mysql" >> /var/www/html/.env
|
||||
echo "DB_CHARSET=\"$DB_CHARSET\"" >> /var/www/html/.env
|
||||
|
||||
# SMTP settings
|
||||
echo "SMTP_FROMNAME=\"Test\"" >> /var/www/html/.env
|
||||
echo "SMTP_FROMADDRESS=\"test@domain.tld\"" >> /var/www/html/.env
|
||||
echo "SMTP_HOST=\"\"" >> /var/www/html/.env
|
||||
echo "SMTP_PORT=587" >> /var/www/html/.env
|
||||
echo "SMTP_USERNAME=\"\"" >> /var/www/html/.env
|
||||
echo "SMTP_PASSWORD=\"\"" >> /var/www/html/.env
|
||||
echo "SMTP_ENCRYPTION=tls" >> /var/www/html/.env
|
||||
|
||||
# Logging
|
||||
echo "LOG_ENABLE=false" >> /var/www/html/.env
|
||||
}
|
||||
|
||||
# Function to check if the admin user exists
|
||||
check_admin_user_exists() {
|
||||
local user_count=$(mysql -u "$DB_USERNAME" -p"$DB_PASSWORD" -h "$DB_HOST" -D "$DB_DATABASE" -N -s -e "SELECT COUNT(*) FROM users WHERE email='$ADMIN_EMAIL';")
|
||||
@@ -45,6 +102,9 @@ create_admin_user() {
|
||||
# Configure PHP error reporting
|
||||
configure_php_error_reporting
|
||||
|
||||
# Create .env configuration file
|
||||
create_environment_file
|
||||
|
||||
# Run database migrations
|
||||
echo "Running database migrations..."
|
||||
php asatru migrate:fresh
|
||||
|
||||
+1
-1
@@ -14,7 +14,7 @@ RUN composer install --no-scripts --no-autoloader
|
||||
RUN composer dump-autoload --optimize
|
||||
|
||||
# Second stage: Apache + PHP setup
|
||||
FROM php:8.3.1-apache
|
||||
FROM php:8.2.0-apache
|
||||
|
||||
# Set the working directory
|
||||
WORKDIR /var/www/html
|
||||
|
||||
Reference in New Issue
Block a user