diff --git a/docker/Dockerfile b/docker/Dockerfile new file mode 100644 index 0000000..07a8979 --- /dev/null +++ b/docker/Dockerfile @@ -0,0 +1,16 @@ +FROM node:18.18-bullseye as builder +RUN git clone https://git.pblr-nyk.pro/gsd/Facti13.Frontend.VueMaterial && \ +mv Facti13.Frontend.VueMaterial /app && chown node:node -R /app && chmod 770 -R /app +WORKDIR /app +USER node +ARG BUILDDATE +ENV BUILDDATE $BUILDDATE +RUN npm install && npm run build + +FROM nginx:stable-alpine +COPY --from=builder /app/dist /usr/share/nginx/html +RUN rm /etc/nginx/conf.d/default.conf +COPY srv.conf /etc/nginx/conf.d +CMD ["nginx", "-g", "daemon off;"] +#ENTRYPOINT ['npm', 'run', 'serve'] + diff --git a/docker/docker-compose.yaml b/docker/docker-compose.yaml new file mode 100644 index 0000000..0bfbc46 --- /dev/null +++ b/docker/docker-compose.yaml @@ -0,0 +1,7 @@ +services: + facti13_vue: + build: ./ + container_name: facti13_vue_app + ports: + - 26282:80 + restart: always diff --git a/docker/rebuild.sh b/docker/rebuild.sh new file mode 100644 index 0000000..a9436bb --- /dev/null +++ b/docker/rebuild.sh @@ -0,0 +1,2 @@ +#!/bin/bash +docker compose build --build-arg BUILDDATE=$(date +%s) && docker compose down && docker compose up -d && docker compose logs -f diff --git a/docker/srv.conf b/docker/srv.conf new file mode 100644 index 0000000..2e8a987 --- /dev/null +++ b/docker/srv.conf @@ -0,0 +1,19 @@ +server { + listen 80; + listen [::]:80; + server_name localhost; + + location / { + root /usr/share/nginx/html; + index index.html index.htm; + } + + location /api { + proxy_pass http://192.168.3.3:26272; + proxy_redirect off; + proxy_set_header Host $host; + proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; + add_header 'Access-Control-Allow-Origin' '*' always; + } + +} diff --git a/src/api/GlobalApi.js b/src/api/GlobalApi.js index 9ea6bbc..5ff5f28 100644 --- a/src/api/GlobalApi.js +++ b/src/api/GlobalApi.js @@ -13,6 +13,8 @@ export default class GlobalApi { admin = new AdminApi() player = new PlayerApi() + builddate = process.env.BUILDDATE === undefined ? null : process.env.BUILDDATE; + constructor() { } diff --git a/src/components/TabsMenuElements/BackendStatus.vue b/src/components/TabsMenuElements/BackendStatus.vue index a83834f..a0e8bd2 100644 --- a/src/components/TabsMenuElements/BackendStatus.vue +++ b/src/components/TabsMenuElements/BackendStatus.vue @@ -1,6 +1,6 @@ diff --git a/vue.config.js b/vue.config.js index bc5149a..039f70e 100644 --- a/vue.config.js +++ b/vue.config.js @@ -1,6 +1,7 @@ const { defineConfig } = require('@vue/cli-service') module.exports = defineConfig({ transpileDependencies: true, + publicPath: process.env.NODE_ENV === "production" ? "/new/" : "/", devServer: { proxy: { "/api": {