49 lines
1.3 KiB
Bash
49 lines
1.3 KiB
Bash
#!/bin/bash
|
|
|
|
set -euo pipefail
|
|
|
|
# Create user content directory
|
|
mkdir -p /app/data/uploads
|
|
chown -R cloudron:cloudron /app/data
|
|
|
|
# Generate secret key on first run
|
|
if [ ! -f /app/data/secret_key.txt ]; then
|
|
echo "=> Generating new secret key"
|
|
head -c 48 /dev/urandom | base64 > /app/data/secret_key.txt
|
|
fi
|
|
|
|
# Export environment variables for Keila
|
|
export PORT=4000
|
|
export DB_URL=$CLOUDRON_POSTGRESQL_URL
|
|
export SECRET_KEY_BASE=$(cat /app/data/secret_key.txt)
|
|
|
|
# Configure URLs from Cloudron environment variables
|
|
export URL_HOST=$CLOUDRON_APP_DOMAIN
|
|
export URL_PATH="/"
|
|
if [[ "$CLOUDRON_APP_ORIGIN" == https://* ]]; then
|
|
export URL_SCHEMA="https"
|
|
export URL_PORT="443"
|
|
else
|
|
export URL_SCHEMA="http"
|
|
export URL_PORT="80"
|
|
fi
|
|
|
|
# Configure email settings
|
|
export MAILER_TYPE=smtp
|
|
export MAILER_SMTP_FROM_EMAIL=$CLOUDRON_MAIL_FROM
|
|
export MAILER_SMTP_HOST=$CLOUDRON_MAIL_SMTP_SERVER
|
|
export MAILER_SMTP_PORT=$CLOUDRON_MAIL_SMTP_PORT
|
|
export MAILER_SMTP_USER=$CLOUDRON_MAIL_SMTP_USERNAME
|
|
export MAILER_SMTP_PASSWORD=$CLOUDRON_MAIL_SMTP_PASSWORD
|
|
export MAILER_ENABLE_STARTTLS=true
|
|
|
|
# Configure user content directory
|
|
export USER_CONTENT_DIR=/app/data/uploads
|
|
|
|
# Set the initial admin user
|
|
export KEILA_USER="admin@cloudron.local"
|
|
export KEILA_PASSWORD="changeme123"
|
|
|
|
echo "=> Starting Keila"
|
|
exec gosu cloudron:cloudron /app/code/bin/keila start
|