nextcloud / start.sh
napps-agency's picture
Use Nextcloud data dir without replacing web root
d909428 verified
Raw
History Blame Contribute Delete
1.5 kB
#!/usr/bin/env bash
set -euo pipefail
APP_URL="${NEXTCLOUD_URL:-https://${SPACE_HOST:-napps-agency-nextcloud.hf.space}}"
APP_HOST="${APP_URL#https://}"
APP_HOST="${APP_HOST#http://}"
export NEXTCLOUD_TRUSTED_DOMAINS="${NEXTCLOUD_TRUSTED_DOMAINS:-${APP_HOST}}"
export OVERWRITEHOST="${OVERWRITEHOST:-${APP_HOST}}"
export OVERWRITEPROTOCOL="${OVERWRITEPROTOCOL:-https}"
export TRUSTED_PROXIES="${TRUSTED_PROXIES:-10.0.0.0/8 172.16.0.0/12 192.168.0.0/16}"
export SQLITE_DATABASE="${SQLITE_DATABASE:-nextcloud}"
DATA_ROOT="${DATA_ROOT:-/data/nextcloud}"
DATA_DIR="${NEXTCLOUD_DATA_DIR:-${DATA_ROOT}/data}"
mkdir -p "${DATA_DIR}"
chown -R www-data:www-data "${DATA_ROOT}"
export NEXTCLOUD_DATA_DIR="${DATA_DIR}"
socat TCP-LISTEN:7860,fork,reuseaddr TCP:127.0.0.1:80 &
/entrypoint.sh apache2-foreground &
server_pid="$!"
occ() {
su -s /bin/bash www-data -c "php /var/www/html/occ $*"
}
for _ in $(seq 1 180); do
if occ status 2>/dev/null | grep -q "installed: true"; then
occ config:system:set overwrite.cli.url --value="${APP_URL}" >/dev/null 2>&1 || true
occ config:system:set overwritehost --value="${APP_HOST}" >/dev/null 2>&1 || true
occ config:system:set overwriteprotocol --value="https" >/dev/null 2>&1 || true
occ app:install calendar >/dev/null 2>&1 || true
occ app:enable calendar >/dev/null 2>&1 || true
occ app:install spreed >/dev/null 2>&1 || true
occ app:enable spreed >/dev/null 2>&1 || true
break
fi
sleep 2
done
wait "${server_pid}"