From 2cda8b607e7efb54bab33123375cf9305b539530 Mon Sep 17 00:00:00 2001 From: b1ek Date: Fri, 10 Mar 2023 17:39:12 +1000 Subject: [PATCH] add docker dev/prod variants --- .gitignore | 8 ++++++-- Dockerfile.dev | 11 +++++++++++ Dockerfile.prod | 11 +++++++++++ docker-compose.dev | 47 +++++++++++++++++++++++++++++++++++++++++++++ docker-compose.prod | 0 5 files changed, 75 insertions(+), 2 deletions(-) create mode 100644 Dockerfile.dev create mode 100644 Dockerfile.prod create mode 100644 docker-compose.dev create mode 100644 docker-compose.prod diff --git a/.gitignore b/.gitignore index 28ef80a..bb78608 100644 --- a/.gitignore +++ b/.gitignore @@ -1,11 +1,15 @@ # package management node_modules package-lock.json -pnpm-lock.yaml +pnpm-lock.yml yarn.lock # env .env # code -!*.js \ No newline at end of file +!*.js + +# docker +docker-compose.yml +Dockerfile \ No newline at end of file diff --git a/Dockerfile.dev b/Dockerfile.dev new file mode 100644 index 0000000..f301b72 --- /dev/null +++ b/Dockerfile.dev @@ -0,0 +1,11 @@ +FROM node:19 + +WORKDIR /opt/code + +COPY . /opt/code + +RUN cat .gitignore | xargs rm -rf && \ + npm i && \ + ./install + +CMD [ "npm", "run", "dev" ] diff --git a/Dockerfile.prod b/Dockerfile.prod new file mode 100644 index 0000000..a7e8459 --- /dev/null +++ b/Dockerfile.prod @@ -0,0 +1,11 @@ +FROM node:19 + +WORKDIR /opt/code + +COPY . /opt/code + +RUN cat .gitignore | xargs rm -rf && \ + npm i --prod && \ + ./install + +CMD [ "npm", "run", "prod" ] diff --git a/docker-compose.dev b/docker-compose.dev new file mode 100644 index 0000000..0ca59a6 --- /dev/null +++ b/docker-compose.dev @@ -0,0 +1,47 @@ +version: '3' +services: + server: + build: + context: . + dockerfile: Dockerfile + volumes: + - './:/opt/code' + ports: + - '${APP_PORT}:${APP_PORT}' + - '9229:9229' + env_file: ./.env + environment: + APP_PORT: '${APP_PORT}' + networks: + - homepage + redis: + image: redis:alpine + ports: + - '6379:6379' + networks: + - homepage + db: + image: postgres:alpine + ports: + - '5432:5432' + environment: + POSTGRES_PASSWORD: '${DB_PASSWORD}' + POSTGRES_USER: '${DB_USERNAME}' + POSTGRES_DB: '${DB_DATABASE}' + volumes: + - './data/db:/var/lib/postgresql' + networks: + - homepage + adminer: + image: adminer:standalone + ports: + - '8001:8080' + networks: + - homepage + environment: + ADMINER_DEFAULT_SERVER: postgres + ADMINER_DESIGN: rmsoft + +networks: + homepage: + driver: bridge \ No newline at end of file diff --git a/docker-compose.prod b/docker-compose.prod new file mode 100644 index 0000000..e69de29