| ADD alpine-minirootfs-3.22.5-x86_64.tar.gz / # buildkit |
| CMD ["/bin/sh"] |
| ARG BUN_RUNTIME_TRANSPILER_CACHE_PATH=0 |
| ENV BUN_RUNTIME_TRANSPILER_CACHE_PATH=0 |
| ARG BUN_INSTALL_BIN=/usr/local/bin |
| ENV BUN_INSTALL_BIN=/usr/local/bin |
| COPY /usr/local/bin/bun /usr/local/bin/ # buildkit |
| COPY docker-entrypoint.sh /usr/local/bin/ # buildkit |
| RUN |2 BUN_RUNTIME_TRANSPILER_CACHE_PATH=0 BUN_INSTALL_BIN=/usr/local/bin /bin/sh -c mkdir -p /usr/local/bun-node-fallback-bin && ln -s /usr/local/bin/bun /usr/local/bun-node-fallback-bin/node # buildkit |
| ENV PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/local/bun-node-fallback-bin |
| RUN |2 BUN_RUNTIME_TRANSPILER_CACHE_PATH=0 BUN_INSTALL_BIN=/usr/local/bin /bin/sh -c addgroup -g 1000 bun && adduser -u 1000 -G bun -s /bin/sh -D bun && ln -s /usr/local/bin/bun /usr/local/bin/bunx && apk add libgcc libstdc++ && which bun && which bunx && bun --version # buildkit |
| WORKDIR /home/bun/app |
| ENTRYPOINT ["/usr/local/bin/docker-entrypoint.sh"] |
| CMD ["/usr/local/bin/bun"] |
| RUN /bin/sh -c ALPINE_VER=$(cat /etc/alpine-release | cut -d. -f1,2 | tr -d .) && echo "Alpine ${ALPINE_VER}" && wget -q "https://github.com/kasmtech/KasmVNC/releases/download/v1.4.0/kasmvncserver_alpine_${ALPINE_VER}_1.4.0_x86_64.apk" -O /tmp/kasmvnc.apk || wget -q "https://github.com/kasmtech/KasmVNC/releases/download/v1.4.0/kasmvncserver_alpine_321_1.4.0_x86_64.apk" -O /tmp/kasmvnc.apk && apk add --allow-untrusted /tmp/kasmvnc.apk && rm /tmp/kasmvnc.apk # buildkit |
| RUN /bin/sh -c apk add --no-cache chromium font-noto ttf-dejavu dbus xdotool xclip xrandr openbox && rm -rf /var/cache/apk/* # buildkit |
| WORKDIR /app |
| COPY package.json bun.lock* ./ # buildkit |
| RUN /bin/sh -c bun install --frozen-lockfile || bun install # buildkit |
| COPY src/ ./src/ # buildkit |
| COPY kasmvnc.yaml /etc/kasmvnc/kasmvnc.yaml # buildkit |
| COPY openbox-rc.xml /etc/xdg/openbox/rc.xml # buildkit |
| COPY vnc-viewer.html /usr/share/kasmvnc/www/vnc-viewer.html # buildkit |
| RUN /bin/sh -c addgroup -S sso && adduser -S sso -G sso && (addgroup sso kasmvnc-cert 2>/dev/null || true) && mkdir -p /data/browser-profile /home/sso/.vnc /tmp/.X11-unix && chmod 1777 /tmp/.X11-unix && chown -R sso:sso /data /app /home/sso # buildkit |
| ARG KASMVNC_PASSWORD=kasmvnc |
| USER sso |
| RUN |1 KASMVNC_PASSWORD=kasmvnc /bin/sh -c echo -e "${KASMVNC_PASSWORD}\n${KASMVNC_PASSWORD}\n" | kasmvncpasswd -u sso -rwo /home/sso/.kasmpasswd # buildkit |
| USER sso |
| EXPOSE [7080/tcp] |
| ENV NODE_ENV=production |
| HEALTHCHECK {Test:[CMD-SHELL wget --no-verbose --tries=1 --spider http://127.0.0.1:7080/status || exit 1] Interval:5s Timeout:3s StartPeriod:0s StartInterval:0s Retries:3} |
| CMD ["bun" "run" "src/index.ts"] |