aboutsummaryrefslogtreecommitdiff
path: root/docker/crupest-debian-dev
diff options
context:
space:
mode:
authorcrupest <crupest@outlook.com>2024-06-16 11:38:17 +0800
committercrupest <crupest@outlook.com>2024-08-15 01:06:50 +0800
commitbbadec644df903e43de93bdd1da39a9b1a075058 (patch)
treed89e618fde02be6d04ee28abcee52842bc802bad /docker/crupest-debian-dev
parentb17d0f6698d80c6c420987601df51f58339b3b4f (diff)
downloadcrupest-bbadec644df903e43de93bdd1da39a9b1a075058.tar.gz
crupest-bbadec644df903e43de93bdd1da39a9b1a075058.tar.bz2
crupest-bbadec644df903e43de93bdd1da39a9b1a075058.zip
feat(docker/debian-dev): auto detect tty.
Diffstat (limited to 'docker/crupest-debian-dev')
-rw-r--r--docker/crupest-debian-dev/Dockerfile2
-rw-r--r--docker/crupest-debian-dev/bootstrap/bash-profile/code-server.bash16
-rwxr-xr-xdocker/crupest-debian-dev/bootstrap/start/code-server.bash19
-rwxr-xr-xdocker/crupest-debian-dev/bootstrap/start/start.bash7
4 files changed, 28 insertions, 16 deletions
diff --git a/docker/crupest-debian-dev/Dockerfile b/docker/crupest-debian-dev/Dockerfile
index 3293f03..d30bec1 100644
--- a/docker/crupest-debian-dev/Dockerfile
+++ b/docker/crupest-debian-dev/Dockerfile
@@ -18,4 +18,4 @@ WORKDIR /home/${USER}
EXPOSE 8080
VOLUME [ "/data", "/state" ]
-CMD [ "bash", "-l" ]
+CMD [ "/bootstrap/start/start.bash" ]
diff --git a/docker/crupest-debian-dev/bootstrap/bash-profile/code-server.bash b/docker/crupest-debian-dev/bootstrap/bash-profile/code-server.bash
index fd88d15..aafc4b5 100644
--- a/docker/crupest-debian-dev/bootstrap/bash-profile/code-server.bash
+++ b/docker/crupest-debian-dev/bootstrap/bash-profile/code-server.bash
@@ -1,15 +1 @@
-export CODE_SERVER_CONFIG="/data/code-server-config.yaml"
-
-CODE_SERVER_PROGRAM=code-server
-CODE_SERVER_PORT=8080
-
-if which "$CODE_SERVER_PROGRAM" > /dev/null 2>&1; then
- if ! pgrep -f "$CODE_SERVER_PROGRAM" > /dev/null 2>&1; then
- echo "code-server is not running, starting..."
- mkdir -p ~/.local/share/code-server
- "$CODE_SERVER_PROGRAM" "--bind-addr" "0.0.0.0:$CODE_SERVER_PORT" \
- > ~/.local/share/code-server/log 2> ~/.local/share/code-server/error &
- fi
-else
- echo "code-server not found, skipping code-server setup."
-fi
+/bootstrap/start/code-server.bash > ~/.local/share/code-server/log 2> ~/.local/share/code-server/error &
diff --git a/docker/crupest-debian-dev/bootstrap/start/code-server.bash b/docker/crupest-debian-dev/bootstrap/start/code-server.bash
new file mode 100755
index 0000000..11ecf82
--- /dev/null
+++ b/docker/crupest-debian-dev/bootstrap/start/code-server.bash
@@ -0,0 +1,19 @@
+#! /usr/bin/env bash
+
+export CODE_SERVER_CONFIG="/data/code-server-config.yaml"
+
+CODE_SERVER_PROGRAM=code-server
+CODE_SERVER_PORT=8080
+
+if which "$CODE_SERVER_PROGRAM" > /dev/null 2>&1; then
+ if ! pgrep -f "$CODE_SERVER_PROGRAM" > /dev/null 2>&1; then
+ echo "code-server is not running, starting..."
+ mkdir -p ~/.local/share/code-server
+ "$CODE_SERVER_PROGRAM" "--bind-addr" "0.0.0.0:$CODE_SERVER_PORT"
+ else
+ echo "code-server is already running."
+ fi
+else
+ echo "code-server not found, skipping code-server setup." >&2
+ exit 1
+fi
diff --git a/docker/crupest-debian-dev/bootstrap/start/start.bash b/docker/crupest-debian-dev/bootstrap/start/start.bash
new file mode 100755
index 0000000..61533fc
--- /dev/null
+++ b/docker/crupest-debian-dev/bootstrap/start/start.bash
@@ -0,0 +1,7 @@
+#! /usr/bin/env bash
+
+if [ -t 0 ]; then
+ exec bash -l
+else
+ /bootstrap/start/code-server.bash
+fi