| |
| FROM node:18-alpine as build |
| WORKDIR /app |
| COPY package*.json ./ |
| RUN npm install |
| COPY . . |
| ARG VITE_API_KEY |
| ENV VITE_API_KEY=$VITE_API_KEY |
| ARG VITE_MEDIA_API_URL |
| ENV VITE_MEDIA_API_URL=$VITE_MEDIA_API_URL |
| RUN npm run build |
|
|
| |
| FROM nginx:alpine |
| COPY --from=build /app/dist /usr/share/nginx/html |
|
|
| |
| RUN echo 'server { \ |
| listen 7860; \ |
| root /usr/share/nginx/html; \ |
| index index.html; \ |
| include /etc/nginx/mime.types; \ |
| \ |
| location / { \ |
| try_files $uri $uri/ /index.html; \ |
| } \ |
| \ |
| location ~* \.(js|css|png|jpg|jpeg|gif|ico|svg)$ { \ |
| expires 30d; \ |
| add_header Cache-Control "public, no-transform"; \ |
| } \ |
| }' > /etc/nginx/conf.d/default.conf |
|
|
| EXPOSE 7860 |
| CMD ["nginx", "-g", "daemon off;"] |