Skip to content

Commit c36ff29

Browse files
committed
switched to supervisord
1 parent 82a9992 commit c36ff29

File tree

6 files changed

+38
-39
lines changed

6 files changed

+38
-39
lines changed

template/code-interpreter.service

Lines changed: 0 additions & 14 deletions
This file was deleted.

template/jupyter.service

Lines changed: 0 additions & 13 deletions
This file was deleted.

template/start-code-interpreter.sh

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
#!/bin/bash
2+
3+
echo "Waiting for Jupyter server to be ready..."
4+
until curl -s -o /dev/null -w '%{http_code}' http://localhost:8888/api/status | grep -q '200'; do
5+
sleep 0.5
6+
done
7+
echo "Jupyter server is ready, starting Code Interpreter..."
8+
9+
exec /root/.server/.venv/bin/uvicorn main:app --host 0.0.0.0 --port 49999 --workers 1 --no-access-log --no-use-colors --timeout-keep-alive 640

template/start-up.sh

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11
#!/bin/bash
22

33
echo "Starting Code Interpreter server..."
4-
systemctl daemon-reload
5-
systemctl start jupyter code-interpreter
4+
supervisord -c /etc/supervisord.conf

template/supervisord.conf

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
[supervisord]
2+
nodaemon=true
3+
logfile=/var/log/supervisord.log
4+
pidfile=/var/run/supervisord.pid
5+
6+
[program:jupyter]
7+
command=/usr/local/bin/jupyter server --IdentityProvider.token=""
8+
environment=MATPLOTLIBRC="/root/.config/matplotlib/.matplotlibrc"
9+
stdout_logfile=/dev/null
10+
stderr_logfile=/dev/fd/1
11+
stderr_logfile_maxbytes=0
12+
autorestart=true
13+
priority=10
14+
15+
[program:code-interpreter]
16+
command=/root/.jupyter/start-code-interpreter.sh
17+
directory=/root/.server
18+
stdout_logfile=/dev/fd/1
19+
stdout_logfile_maxbytes=0
20+
stderr_logfile=/dev/fd/1
21+
stderr_logfile_maxbytes=0
22+
autorestart=true
23+
priority=20
24+
startsecs=0

template/template.py

Lines changed: 4 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ def make_template(
3838
"sudo",
3939
"fonts-noto-cjk",
4040
"ca-certificates",
41-
"systemd",
41+
"supervisor",
4242
]
4343
)
4444
.run_cmd("curl -fsSL https://deb.nodesource.com/setup_20.x | bash -")
@@ -122,20 +122,14 @@ def make_template(
122122
template = (
123123
template.copy("matplotlibrc", ".config/matplotlib/.matplotlibrc")
124124
.copy("start-up.sh", ".jupyter/start-up.sh")
125+
.copy("start-code-interpreter.sh", ".jupyter/start-code-interpreter.sh")
125126
.run_cmd("chmod +x .jupyter/start-up.sh")
126127
.copy("jupyter_server_config.py", ".jupyter/")
127128
.make_dir(".ipython/profile_default/startup")
128129
.copy("ipython_kernel_config.py", ".ipython/profile_default/")
129130
.copy("startup_scripts", ".ipython/profile_default/startup")
130-
# Install systemd service units
131-
.copy("jupyter.service", ".jupyter/jupyter.service")
132-
.copy("code-interpreter.service", ".jupyter/code-interpreter.service")
133-
.run_cmd(
134-
[
135-
"cp /root/.jupyter/jupyter.service /etc/systemd/system/",
136-
"cp /root/.jupyter/code-interpreter.service /etc/systemd/system/",
137-
]
138-
)
131+
# Install supervisord config
132+
.copy("supervisord.conf", "/etc/supervisord.conf")
139133
)
140134

141135
if is_docker:

0 commit comments

Comments
 (0)