diff --git a/Frontend/Dockerfile b/Frontend/Dockerfile index 0af9ce9..0b44b57 100644 --- a/Frontend/Dockerfile +++ b/Frontend/Dockerfile @@ -18,3 +18,13 @@ COPY ./nginx.conf /etc/nginx/conf.d/default.conf EXPOSE 80 EXPOSE 443 + + +FROM node:latest as dev +WORKDIR /app +COPY package*.json ./ +RUN npm install +ENV HOST=0.0.0.0 +COPY . . +EXPOSE 8080 +CMD ["npm", "run", "dev"] diff --git a/Frontend/package.json b/Frontend/package.json index 37b53fe..dc3c3f1 100644 --- a/Frontend/package.json +++ b/Frontend/package.json @@ -3,7 +3,7 @@ "version": "0.0.0", "private": true, "scripts": { - "dev": "vite", + "dev": "vite --host", "build": "run-p type-check build-only", "preview": "vite preview", "build-only": "vite build", diff --git a/Frontend/src/components/mock/HeadersComponent.vue b/Frontend/src/components/mock/HeadersComponent.vue new file mode 100644 index 0000000..a711a20 --- /dev/null +++ b/Frontend/src/components/mock/HeadersComponent.vue @@ -0,0 +1,53 @@ + + + \ No newline at end of file diff --git a/Frontend/src/components/mock/HistoryComponent.vue b/Frontend/src/components/mock/HistoryComponent.vue new file mode 100644 index 0000000..e69de29 diff --git a/Frontend/src/components/mock/RestMockComponent.vue b/Frontend/src/components/mock/RestMockComponent.vue deleted file mode 100644 index 25212f2..0000000 --- a/Frontend/src/components/mock/RestMockComponent.vue +++ /dev/null @@ -1,10 +0,0 @@ - - - - - diff --git a/Frontend/src/components/mock/RestMockMessageComponent.vue b/Frontend/src/components/mock/RestMockMessageComponent.vue new file mode 100644 index 0000000..8e7f1c4 --- /dev/null +++ b/Frontend/src/components/mock/RestMockMessageComponent.vue @@ -0,0 +1,69 @@ + + + + + diff --git a/Frontend/src/router/index.ts b/Frontend/src/router/index.ts index b935285..76f64a8 100644 --- a/Frontend/src/router/index.ts +++ b/Frontend/src/router/index.ts @@ -34,6 +34,16 @@ const routes = [ name: 'xslt', component: () => xsltTool }, + { + path: '/xml/xpath', + name: 'xpath', + component: () => restMock + }, + { + path: '/rest/mock', + name: 'restmock', + component: () => restMock + } ] diff --git a/Frontend/src/views/RestMockView.vue b/Frontend/src/views/RestMockView.vue index df7008f..e85ee3b 100644 --- a/Frontend/src/views/RestMockView.vue +++ b/Frontend/src/views/RestMockView.vue @@ -1,14 +1,20 @@ diff --git a/Frontend/vite.config.ts b/Frontend/vite.config.ts index a096036..adf0c13 100644 --- a/Frontend/vite.config.ts +++ b/Frontend/vite.config.ts @@ -8,6 +8,27 @@ export default defineConfig({ plugins: [ vue(), ], + server:{ + port: 80, + host: '0.0.0.0', + proxy : { + '/java': { + target:'http://xmltools-backend:8081/', + rewrite: (path) => path.replace(/^\/java/, ''), + }, + '/libxml': { + target:'http://xmltools-libxml-backend/', + rewrite: (path) => path.replace(/^\/libxml/, ''), + }, + '/mock': { + target:'http://xmltools-mocked-services:8097/', + rewrite: (path) => path.replace(/^\/mock/, ''), + }, + '/api/mock': { + target: 'http://xmltools-mocked-services:8097/' + } + }, + }, resolve: { alias: { '@': fileURLToPath(new URL('./src', import.meta.url)), diff --git a/docker-compose.dev.yml b/docker-compose.dev.yml new file mode 100644 index 0000000..8aa4ac8 --- /dev/null +++ b/docker-compose.dev.yml @@ -0,0 +1,75 @@ +version: "3" + +services: + redis: + container_name: xmltools-redis + build: ./Redis + restart: "no" + + xmltools-frontend: + build: + context: ./Frontend + target: dev + container_name: xmltools-frontend + image: xmltools-frontend + ports: + - 80:80 + volumes: + - ./Frontend:/app + - /app/node_modules + xmltools-backend: + build: ./Backend/tools-services + container_name: xmltools-backend + image: xmltools-backend + ports: + - 8081:8081 + + xmltools-libxml-backend: + build: ./Backend-libXML + container_name: xmltools-libxml-backend + image: xmltools-libxml-backend + ports: + - 8082:80 + + xmltools-mocked-services: + build: + context: ./Backend/mocked-services + dockerfile: Dockerfile + container_name: xmltools-mocked-services + restart: "no" + ports: + - "8097:8097" + depends_on: + - redis + environment: + SPRING_PROFILES_ACTIVE: DEV + TZ: Europe/Warsaw + + swagger: + image: "swaggerapi/swagger-ui:latest" + container_name: xmltools-swagger + ports: + - "8000:8080" + environment: + - BASE_URL=/swagger + - SWAGGER_JSON=/Swagger/swagger.json + volumes: + - ./Swagger:/Swagger + + filebeat: + build: ./Filebeat + container_name: xmltools-filebeat + user: root + volumes: + - "./Filebeat/filebeat.docker.yml:/usr/share/filebeat/filebeat.yml:ro" + - "/var/lib/docker/containers:/var/lib/docker/containers:ro" + - "/var/run/docker.sock:/var/run/docker.sock:ro" + environment: + - ENV_TYPE + command: + - "-e" + - "--strict.perms=false" + +networks: + default: + name: tools_network diff --git a/docker-compose.yml b/docker-compose.yml index 4345161..01f9948 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -7,7 +7,9 @@ services: restart: "no" xmltools-frontend: - build: ./Frontend + build: + context: ./Frontend + target: production-stage container_name: xmltools-frontend image: xmltools-frontend ports: diff --git a/readme.md b/readme.md index e0e9ba1..2d61997 100644 --- a/readme.md +++ b/readme.md @@ -41,6 +41,9 @@ within created container. ## How to run +Dev server(with hot-reload frontend): docker-compose -f docker-compose.dev.yml up --build +Prod: docker-compose up --build + ### Localy In order to run application use ```aidl