#!/bin/sh set -e echo "====================== Writing rclone config ========================" if [ -n "$RCLONE_CONF" ]; then mkdir -p ~/.config/rclone echo "$RCLONE_CONF" > ~/.config/rclone/rclone.conf fi echo "====================== Setting up persistent storage ========================" # Buat folder persistent di /data mkdir -p /data/files mkdir -p /data/projects mkdir -p /data/coder-config/extensions mkdir -p /data/coder-config/User # Symlink config dan extensions code-server ke /data (persistent) if [ ! -L /home/coder/.local/share/code-server/extensions ]; then rm -rf /home/coder/.local/share/code-server/extensions ln -sf /data/coder-config/extensions /home/coder/.local/share/code-server/extensions fi # Simpan settings user ke /data jika belum ada if [ ! -f /data/coder-config/User/settings.json ]; then cp /home/coder/.local/share/code-server/User/settings.json /data/coder-config/User/settings.json 2>/dev/null || \ echo '{"workbench.colorTheme": "Default Dark Modern"}' > /data/coder-config/User/settings.json fi # Symlink User settings ke /data if [ ! -L /home/coder/.local/share/code-server/User ]; then rm -rf /home/coder/.local/share/code-server/User ln -sf /data/coder-config/User /home/coder/.local/share/code-server/User fi chown -R coder:coder /data 2>/dev/null || true echo "====================== Starting dufs (port 5000) ========================" /usr/local/bin/dufs /data/files \ --allow-upload \ --allow-delete \ --allow-search \ --allow-archive \ --enable-cors \ --path-prefix /files \ --port 5000 \ --bind 127.0.0.1 & sleep 1 echo "====================== Starting code-server (port 8443) ========================" sudo -E -u coder code-server \ --bind-addr 127.0.0.1:8443 \ --user-data-dir /data/coder-config & sleep 2 echo "====================== Starting nginx (port 7860) ========================" # Remove default nginx site configs rm -f /etc/nginx/sites-enabled/default /etc/nginx/sites-enabled/* /etc/nginx/conf.d/default.conf 2>/dev/null || true nginx -g "daemon off;"