From 856e514da787cf951538cbaf1086606ec47f9dc8 Mon Sep 17 00:00:00 2001 From: minie4 Date: Wed, 4 May 2022 00:45:11 +0200 Subject: [PATCH] =?UTF-8?q?=F0=9F=90=B3=20Add=20docker=20support?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .dockerignore | 3 +++ Dockerfile | 17 +++++++++++++++++ docker-compose.yml | 22 ++++++++++++++++++++++ 3 files changed, 42 insertions(+) create mode 100644 .dockerignore create mode 100644 Dockerfile create mode 100644 docker-compose.yml diff --git a/.dockerignore b/.dockerignore new file mode 100644 index 0000000..097e7b1 --- /dev/null +++ b/.dockerignore @@ -0,0 +1,3 @@ +node_modules +server/node_modules +.env \ No newline at end of file diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..4c40528 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,17 @@ +FROM node:lts-alpine + +WORKDIR /app +COPY package*.json ./ +RUN npm ci + +WORKDIR /app/server +COPY server/package*.json ./ +RUN npm ci +COPY server/prisma/schema.prisma ./prisma/schema.prisma +RUN npx prisma generate + +WORKDIR /app +COPY ./ ./ + +WORKDIR /app/server +CMD ["node", "index.js"] \ No newline at end of file diff --git a/docker-compose.yml b/docker-compose.yml new file mode 100644 index 0000000..86e5fb4 --- /dev/null +++ b/docker-compose.yml @@ -0,0 +1,22 @@ +version: "3" +services: + app: + build: . + ports: + - 3000:3000 + environment: + - DATABASE_URL=postgresql://postgres:postgres@db:5432/postgres + depends_on: + - db + env_file: + - ./server/.env + command: /bin/sh -c "npx prisma db push && node index.js" + db: + image: postgres + environment: + - POSTGRES_PASSWORD=postgres + volumes: + - postgres-data:/var/lib/postgresql/data + +volumes: + postgres-data: