clusev/docker/terminal/Dockerfile

15 lines
321 B
Docker

# Clusev terminal sidecar — Node ws↔SSH bridge (pure JS: ws + ssh2, no native addons).
FROM node:20-bookworm-slim
WORKDIR /app
COPY package.json ./
RUN npm install --omit=dev && npm cache clean --force
COPY server.js ./
# Run as the bundled unprivileged node user.
USER node
EXPOSE 3000
CMD ["node", "server.js"]