Spaces:
Paused
Paused
| 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;" | |