mirror of
https://github.com/Skyvern-AI/skyvern.git
synced 2026-04-28 11:40:32 +00:00
28 lines
1 KiB
XML
28 lines
1 KiB
XML
FROM node:20.12-slim
|
|
|
|
# Install tini for proper signal handling and zombie reaping
|
|
RUN apt-get update && apt-get install -y --no-install-recommends tini && rm -rf /var/lib/apt/lists/*
|
|
|
|
WORKDIR /app
|
|
COPY ./skyvern-frontend /app
|
|
COPY ./entrypoint-skyvernui.sh /app/entrypoint-skyvernui.sh
|
|
RUN npm install
|
|
|
|
# Placeholders for runtime injection (will be replaced by entrypoint script)
|
|
ENV VITE_API_BASE_URL=__VITE_API_BASE_URL_PLACEHOLDER__
|
|
ENV VITE_WSS_BASE_URL=__VITE_WSS_BASE_URL_PLACEHOLDER__
|
|
ENV VITE_ARTIFACT_API_BASE_URL=__VITE_ARTIFACT_API_BASE_URL_PLACEHOLDER__
|
|
ENV VITE_SKYVERN_API_KEY=__SKYVERN_API_KEY_PLACEHOLDER__
|
|
|
|
# APP_VERSION is baked into the JS bundle at build time via Vite's define.
|
|
# Pass --build-arg APP_VERSION=$(git rev-parse HEAD) when building the image.
|
|
ARG APP_VERSION=development
|
|
ENV APP_VERSION=$APP_VERSION
|
|
|
|
# Build at image time
|
|
RUN npm run build
|
|
|
|
# Use tini as init for proper signal handling and zombie reaping
|
|
ENTRYPOINT ["/usr/bin/tini", "--"]
|
|
CMD ["/bin/bash", "/app/entrypoint-skyvernui.sh"]
|
|
|