summaryrefslogtreecommitdiff
path: root/Dockerfile-dev
diff options
context:
space:
mode:
authorOlcan <[email protected]>2025-04-25 10:58:23 -0700
committerGitHub <[email protected]>2025-04-25 10:58:23 -0700
commit320f54e2057da5ae92ee47d9d53d1c77a4badc19 (patch)
tree9d2239d747828dd191ef4ef682c08853319d9cf5 /Dockerfile-dev
parenteea524f6bb8becf851e44a57b397217b0a147be0 (diff)
instant (dev) sandbox (#171)
* instant (dev) sandbox * leave Dockerfile as is to pass deploy test * fix comma * fix prod build * do not use "images exists" which docker does not support * separate dev-mode flag * Merge remote-tracking branch 'origin/main' into instant_sandbox
Diffstat (limited to 'Dockerfile-dev')
-rw-r--r--Dockerfile-dev31
1 files changed, 31 insertions, 0 deletions
diff --git a/Dockerfile-dev b/Dockerfile-dev
new file mode 100644
index 00000000..33eb889a
--- /dev/null
+++ b/Dockerfile-dev
@@ -0,0 +1,31 @@
+FROM docker.io/library/node:20-slim
+
+# install minimal set of packages, then clean up
+RUN apt-get update && apt-get install -y --no-install-recommends \
+ man-db \
+ curl \
+ dnsutils \
+ less \
+ jq \
+ bc \
+ gh \
+ git \
+ unzip \
+ rsync \
+ ripgrep \
+ procps \
+ psmisc \
+ lsof \
+ && apt-get clean \
+ && rm -rf /var/lib/apt/lists/*
+
+# set up npm global package folder under /usr/local/share
+# give it to non-root user node, already set up in base image
+RUN mkdir -p /usr/local/share/npm-global \
+ && chown -R node:node /usr/local/share/npm-global
+ENV NPM_CONFIG_PREFIX=/usr/local/share/npm-global
+ENV PATH=$PATH:/usr/local/share/npm-global/bin
+
+# switch to non-root user node
+USER node
+