- USER root am Ende des Dockerfile für /init
- set -e für bessere Fehlerbehandlung
- chmod 600 für .env Sicherheit
🤖 Generated with Claude Code
36 lines
912 B
Bash
36 lines
912 B
Bash
#!/bin/bash
|
|
# Erstellt .env aus Docker Environment Variables
|
|
# Muss als root laufen (serversideup S6-overlay Requirement)
|
|
|
|
set -e
|
|
|
|
ENV_FILE="/var/www/html/.env"
|
|
|
|
# .env aus Environment Variables erstellen
|
|
if [ ! -f "$ENV_FILE" ]; then
|
|
cat > "$ENV_FILE" << EOF
|
|
WP_ENV=${WP_ENV:-production}
|
|
WP_HOME=${WP_HOME}
|
|
WP_SITEURL=${WP_SITEURL}
|
|
DB_NAME=${DB_NAME}
|
|
DB_USER=${DB_USER}
|
|
DB_PASSWORD=${DB_PASSWORD}
|
|
DB_HOST=${DB_HOST}
|
|
WP_REDIS_HOST=${WP_REDIS_HOST:-redis}
|
|
AUTH_KEY=${AUTH_KEY}
|
|
SECURE_AUTH_KEY=${SECURE_AUTH_KEY}
|
|
LOGGED_IN_KEY=${LOGGED_IN_KEY}
|
|
NONCE_KEY=${NONCE_KEY}
|
|
AUTH_SALT=${AUTH_SALT}
|
|
SECURE_AUTH_SALT=${SECURE_AUTH_SALT}
|
|
LOGGED_IN_SALT=${LOGGED_IN_SALT}
|
|
NONCE_SALT=${NONCE_SALT}
|
|
EOF
|
|
chown www-data:www-data "$ENV_FILE"
|
|
chmod 600 "$ENV_FILE"
|
|
echo "[entrypoint] .env created from environment variables"
|
|
fi
|
|
|
|
# S6-overlay /init ausführen (als root!)
|
|
exec "$@"
|