| #!/bin/bash |
| |
| |
| |
| |
| set -euo pipefail |
|
|
| |
| RED='\033[0;31m'; GREEN='\033[0;32m'; YELLOW='\033[1;33m' |
| BLUE='\033[0;34m'; NC='\033[0m' |
|
|
| log() { echo -e "${GREEN}[START]${NC} $*"; } |
| warn() { echo -e "${YELLOW}[WARN ]${NC} $*"; } |
| err() { echo -e "${RED}[ERROR]${NC} $*" >&2; } |
|
|
| |
| echo "" |
| echo -e "${BLUE}ββββββββββββββββββββββββββββββββββββββββββββββββββββ${NC}" |
| echo -e "${BLUE}β Ubuntu 24.04 XFCE Desktop β HuggingFace Space β${NC}" |
| echo -e "${BLUE}β PRoot-Distro Style β noVNC Browser Access β${NC}" |
| echo -e "${BLUE}ββββββββββββββββββββββββββββββββββββββββββββββββββββ${NC}" |
| echo " Started: $(date)" |
| echo "" |
|
|
| |
| if [ ! -d /data ]; then |
| warn "/data not found β creating in-container fallback (data will NOT persist)" |
| mkdir -p /data |
| fi |
|
|
| |
| log "Phase 1/3 β Persistent storage" |
| bash /setup_storage.sh |
|
|
| log "Phase 2/3 β Ubuntu user environment" |
| bash /setup_ubuntu.sh |
|
|
| log "Phase 3/3 β VNC configuration" |
| bash /setup_vnc.sh |
|
|
| |
| mkdir -p /data/logs |
| mkdir -p /var/log/supervisor |
|
|
| |
| mkdir -p /var/lib/nginx/body /var/lib/nginx/proxy \ |
| /var/lib/nginx/fastcgi /var/lib/nginx/uwsgi \ |
| /var/lib/nginx/scgi |
| chown -R www-data:www-data /var/lib/nginx |
|
|
| |
| log "Launching supervisord (manages all services)β¦" |
| echo "" |
| exec /usr/bin/supervisord -n -c /etc/supervisor/supervisord.conf |
|
|