File size: 2,096 Bytes
86301bd
 
cb8a063
86301bd
cb8a063
 
 
 
 
86301bd
1df89d6
 
cb8a063
1df89d6
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
cb8a063
 
 
 
 
 
71f9d01
cb8a063
 
 
 
 
 
71f9d01
1df89d6
 
cb8a063
 
 
 
 
 
 
1df89d6
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
#!/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;"