Browse Source

chore: add test deployment docker compose file

Andrew Bastin 11 months ago
parent
commit
e41e956273
1 changed files with 48 additions and 0 deletions
  1. 48 0
      docker-compose.deploy.yml

+ 48 - 0
docker-compose.deploy.yml

@@ -0,0 +1,48 @@
+# Docker Compose config used for internal test and QA deployments
+# This just spins up the AIO container along with an attached DB to the standard HTTP ports with subpath access mode
+
+# TODO: Add Healthcheck for the AIO container
+
+version: "3.7"
+
+services:
+  # The service that spins up all 3 services at once in one container
+  hoppscotch-aio:
+    container_name: hoppscotch-aio
+    restart: unless-stopped
+    build:
+      dockerfile: prod.Dockerfile
+      context: .
+      target: aio
+    environment:
+      - DATABASE_URL=postgresql://postgres:testpass@hoppscotch-db:5432/hoppscotch
+      - ENABLE_SUBPATH_BASED_ACCESS=false
+    depends_on:
+      hoppscotch-db:
+        condition: service_healthy
+    ports:
+      - "80:80"
+
+  # The preset DB service, you can delete/comment the below lines if
+  # you are using an external postgres instance
+  # This will be exposed at port 5432
+  hoppscotch-db:
+    image: postgres:15
+    ports:
+      - "5432:5432"
+    user: postgres
+    environment:
+      # The default user defined by the docker image
+      POSTGRES_USER: postgres
+      # NOTE: Please UPDATE THIS PASSWORD!
+      POSTGRES_PASSWORD: testpass
+      POSTGRES_DB: hoppscotch
+    healthcheck:
+      test:
+        [
+          "CMD-SHELL",
+          "sh -c 'pg_isready -U $${POSTGRES_USER} -d $${POSTGRES_DB}'"
+        ]
+      interval: 5s
+      timeout: 5s
+      retries: 10