You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
44 lines
1008 B
XML
44 lines
1008 B
XML
FROM node:lts-alpine AS cvat-ui
|
|
|
|
ARG http_proxy
|
|
ARG https_proxy
|
|
ARG no_proxy
|
|
ARG socks_proxy
|
|
|
|
ENV TERM=xterm \
|
|
http_proxy=${http_proxy} \
|
|
https_proxy=${https_proxy} \
|
|
no_proxy=${no_proxy} \
|
|
socks_proxy=${socks_proxy}
|
|
|
|
ENV LANG='C.UTF-8' \
|
|
LC_ALL='C.UTF-8'
|
|
|
|
# Install dependencies
|
|
COPY cvat-core/package*.json /tmp/cvat-core/
|
|
COPY cvat-canvas/package*.json /tmp/cvat-canvas/
|
|
COPY cvat-ui/package*.json /tmp/cvat-ui/
|
|
|
|
# Install cvat-core dependencies
|
|
WORKDIR /tmp/cvat-core/
|
|
RUN npm install
|
|
|
|
# Install cvat-canvas dependencies
|
|
WORKDIR /tmp/cvat-canvas/
|
|
RUN npm install
|
|
|
|
# Install cvat-ui dependencies
|
|
WORKDIR /tmp/cvat-ui/
|
|
RUN npm install
|
|
|
|
# Build source code
|
|
COPY cvat-core/ /tmp/cvat-core/
|
|
COPY cvat-canvas/ /tmp/cvat-canvas/
|
|
COPY cvat-ui/ /tmp/cvat-ui/
|
|
RUN npm run build
|
|
|
|
FROM nginx:stable-alpine
|
|
# Replace default.conf configuration to remove unnecessary rules
|
|
COPY cvat-ui/react_nginx.conf /etc/nginx/conf.d/default.conf
|
|
COPY --from=cvat-ui /tmp/cvat-ui/dist /usr/share/nginx/html/
|