#!/bin/bash set -e # Logging function log() { echo "[$(date '+%Y-%m-%d %H:%M:%S')] [File Browser] $*" } log "Initializing File Browser..." # Ensure the directory exists and set correct permissions mkdir -p /home/user/filebrowser chmod 755 /home/user/filebrowser # Initialize config and database if not exist if [[ ! -f "/home/user/filebrowser/filebrowser.db" ]]; then log "Creating File Browser database..." # Initialize using simple CLI command filebrowser config init \ --port 8080 \ --address 0.0.0.0 \ --database /home/user/filebrowser/filebrowser.db \ --root /home/user \ --log stdout # Add default admin user log "Creating default admin user..." filebrowser users add admin admin \ --database /home/user/filebrowser/filebrowser.db \ --perm.admin log "File Browser initialized successfully" else log "File Browser database already exists" fi # Start File Browser log "Starting File Browser on port 8080..." exec filebrowser \ --port 8080 \ --address 0.0.0.0 \ --database /home/user/filebrowser/filebrowser.db \ --root /home/user \ --log stdout