From 80f2dabfb9c1f895df473ede4191e7da47cd5cb5 Mon Sep 17 00:00:00 2001 From: r0r-5chach Date: Mon, 14 Oct 2024 18:08:21 +0100 Subject: [PATCH] init --- backend.Dockerfile | 13 +++++++++++++ docker-compose.yml | 20 ++++++++++++++++++++ frontend.Dockerfile | 5 +++++ nginx.conf | 14 ++++++++++++++ 4 files changed, 52 insertions(+) create mode 100644 backend.Dockerfile create mode 100644 docker-compose.yml create mode 100644 frontend.Dockerfile create mode 100644 nginx.conf diff --git a/backend.Dockerfile b/backend.Dockerfile new file mode 100644 index 0000000..1935268 --- /dev/null +++ b/backend.Dockerfile @@ -0,0 +1,13 @@ +FROM openjdk:latest AS builder +#TODO: change latest to same version as project +COPY backend/ /backend/ +# TODO: change backend to the name of application folder + +WORKDIR /backend/ +RUN mvn clean package -DskipTests + +FROM openjdk:latest +COPY --from=builder backend/target/example.jar app.jar +#TODO: change example.jar to application name + +CMD ["java", "-jar", "app.jar"] diff --git a/docker-compose.yml b/docker-compose.yml new file mode 100644 index 0000000..f5d1876 --- /dev/null +++ b/docker-compose.yml @@ -0,0 +1,20 @@ +services: + frontend: + build: "./frontend.Dockerfile" + ports: + - 3000:3000 + backend: + build: "./backend.Dockerfile" + ports: + - 4000:4000 + database: + image: "mongo:latest" + ports: + - 27017:27017 + environment: + MONGO_INITDB_ROOT_USERNAME: "root" + MONGO_INITDB_ROOT_PASSWORD: "password" + volumes: database:/data/db + +volumes: + database: diff --git a/frontend.Dockerfile b/frontend.Dockerfile new file mode 100644 index 0000000..000c339 --- /dev/null +++ b/frontend.Dockerfile @@ -0,0 +1,5 @@ +FROM node:latest +#TODO: change latest to application version +COPY backend/ /backend/ +RUN npm install +CMD ["npm", "run", "dev"] diff --git a/nginx.conf b/nginx.conf new file mode 100644 index 0000000..b203538 --- /dev/null +++ b/nginx.conf @@ -0,0 +1,14 @@ + server { + listen 80; + server_name example.com; + + location / { + proxy_pass http://localhost:3000; + proxy_http_version 1.1; + proxy_set_header Upgrade $http_upgrade; + proxy_set_header Connection 'upgrade'; + proxy_set_header Host $host; + proxy_cache_bypass $http_upgrade; + } + } +