From 42d6c1fc2233f0e5130f5a118490b2685d812c75 Mon Sep 17 00:00:00 2001 From: Matt Bourne Date: Wed, 7 May 2025 18:17:32 +0100 Subject: [PATCH 01/12] Create Dockerfile --- Dockerfile | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) create mode 100644 Dockerfile diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 00000000000..6380e95f1fe --- /dev/null +++ b/Dockerfile @@ -0,0 +1,23 @@ +# Start from a Node.js base image +FROM node:18 + +# Install pnpm globally +RUN npm install -g pnpm + +# Create app directory +WORKDIR /app + +# Copy the entire repo +COPY . . + +# Install dependencies +RUN pnpm install + +# Build the webapp +RUN pnpm --filter webapp build + +# Set working directory for webapp +WORKDIR /app/apps/webapp + +# Start the app +CMD ["pnpm", "start"] From b040e51817aa0a2dcfbf77685529220c8f8f104a Mon Sep 17 00:00:00 2001 From: Matt Bourne Date: Wed, 7 May 2025 18:40:05 +0100 Subject: [PATCH 02/12] Update Dockerfile --- Dockerfile | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/Dockerfile b/Dockerfile index 6380e95f1fe..c9f1b045043 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,23 +1,26 @@ -# Start from a Node.js base image +# Use official Node.js 18 base image FROM node:18 # Install pnpm globally RUN npm install -g pnpm -# Create app directory +# Set working directory WORKDIR /app -# Copy the entire repo +# Copy all source files COPY . . -# Install dependencies +# Install dependencies across the monorepo RUN pnpm install -# Build the webapp +# Build only the webapp RUN pnpm --filter webapp build -# Set working directory for webapp +# Expose the port used by the webapp +EXPOSE 3000 + +# Set working directory to the webapp WORKDIR /app/apps/webapp -# Start the app +# Start the app (use dev if you want live logs during debugging) CMD ["pnpm", "start"] From 465a20f3ab274df48927df78f9f745f1b105367c Mon Sep 17 00:00:00 2001 From: Matt Bourne Date: Wed, 7 May 2025 18:55:02 +0100 Subject: [PATCH 03/12] Delete Dockerfile --- Dockerfile | 26 -------------------------- 1 file changed, 26 deletions(-) delete mode 100644 Dockerfile diff --git a/Dockerfile b/Dockerfile deleted file mode 100644 index c9f1b045043..00000000000 --- a/Dockerfile +++ /dev/null @@ -1,26 +0,0 @@ -# Use official Node.js 18 base image -FROM node:18 - -# Install pnpm globally -RUN npm install -g pnpm - -# Set working directory -WORKDIR /app - -# Copy all source files -COPY . . - -# Install dependencies across the monorepo -RUN pnpm install - -# Build only the webapp -RUN pnpm --filter webapp build - -# Expose the port used by the webapp -EXPOSE 3000 - -# Set working directory to the webapp -WORKDIR /app/apps/webapp - -# Start the app (use dev if you want live logs during debugging) -CMD ["pnpm", "start"] From 0715ce1d160ef6c7fc49b072f182ff4acd3047d3 Mon Sep 17 00:00:00 2001 From: Matt Bourne Date: Wed, 7 May 2025 18:55:32 +0100 Subject: [PATCH 04/12] Create Dockerfile --- apps/webapp/Dockerfile | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 apps/webapp/Dockerfile diff --git a/apps/webapp/Dockerfile b/apps/webapp/Dockerfile new file mode 100644 index 00000000000..4aff93455d9 --- /dev/null +++ b/apps/webapp/Dockerfile @@ -0,0 +1,25 @@ +FROM node:18 + +# Install pnpm globally +RUN npm install -g pnpm + +# Set working directory to the root of the monorepo (relative to build context) +WORKDIR /app + +# Copy everything from the repo root (since Docker build context will be /app/apps/webapp) +COPY ../../ . + +# Install dependencies across the monorepo +RUN pnpm install + +# Build only the webapp +RUN pnpm --filter webapp build + +# Expose port used by the webapp +EXPOSE 3000 + +# Set working directory to the webapp +WORKDIR /app/apps/webapp + +# Start the app +CMD ["pnpm", "start"] From 1193e73dfb2c64ac943d93edb79a5780bb5c2cc3 Mon Sep 17 00:00:00 2001 From: Matt Bourne Date: Wed, 7 May 2025 19:01:04 +0100 Subject: [PATCH 05/12] Delete apps/webapp/Dockerfile --- apps/webapp/Dockerfile | 25 ------------------------- 1 file changed, 25 deletions(-) delete mode 100644 apps/webapp/Dockerfile diff --git a/apps/webapp/Dockerfile b/apps/webapp/Dockerfile deleted file mode 100644 index 4aff93455d9..00000000000 --- a/apps/webapp/Dockerfile +++ /dev/null @@ -1,25 +0,0 @@ -FROM node:18 - -# Install pnpm globally -RUN npm install -g pnpm - -# Set working directory to the root of the monorepo (relative to build context) -WORKDIR /app - -# Copy everything from the repo root (since Docker build context will be /app/apps/webapp) -COPY ../../ . - -# Install dependencies across the monorepo -RUN pnpm install - -# Build only the webapp -RUN pnpm --filter webapp build - -# Expose port used by the webapp -EXPOSE 3000 - -# Set working directory to the webapp -WORKDIR /app/apps/webapp - -# Start the app -CMD ["pnpm", "start"] From d07bcf0192312876939b6564b937d7e08b799203 Mon Sep 17 00:00:00 2001 From: Matt Bourne Date: Wed, 7 May 2025 19:01:29 +0100 Subject: [PATCH 06/12] Create Dockerfile --- Dockerfile | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) create mode 100644 Dockerfile diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 00000000000..8a0126b779f --- /dev/null +++ b/Dockerfile @@ -0,0 +1,16 @@ +FROM node:18 + +RUN npm install -g pnpm + +WORKDIR /app + +COPY . . + +RUN pnpm install +RUN pnpm --filter webapp build + +EXPOSE 3000 + +WORKDIR /app/apps/webapp + +CMD ["pnpm", "start"] From 495894e52f79f183b151cc78e642e59eccfb1d45 Mon Sep 17 00:00:00 2001 From: Matt Bourne Date: Wed, 7 May 2025 19:12:28 +0100 Subject: [PATCH 07/12] Update Dockerfile --- Dockerfile | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/Dockerfile b/Dockerfile index 8a0126b779f..3ef3b61bee6 100644 --- a/Dockerfile +++ b/Dockerfile @@ -7,6 +7,11 @@ WORKDIR /app COPY . . RUN pnpm install + +# 🔧 NEW: build all internal packages first +RUN pnpm build + +# 🔧 THEN: build the webapp (no longer fails due to missing deps) RUN pnpm --filter webapp build EXPOSE 3000 From beccf30ec582e0917036d1dc961323f6723994f4 Mon Sep 17 00:00:00 2001 From: Matt Bourne Date: Wed, 7 May 2025 19:23:43 +0100 Subject: [PATCH 08/12] Update Dockerfile --- Dockerfile | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/Dockerfile b/Dockerfile index 3ef3b61bee6..cc3e51407dc 100644 --- a/Dockerfile +++ b/Dockerfile @@ -8,10 +8,13 @@ COPY . . RUN pnpm install -# 🔧 NEW: build all internal packages first +# ✅ Fix: override Prisma client version +RUN pnpm add -w @prisma/client@5.3.1 + +# 🔧 Build internal packages first RUN pnpm build -# 🔧 THEN: build the webapp (no longer fails due to missing deps) +# 🔧 Then build the webapp RUN pnpm --filter webapp build EXPOSE 3000 From 1184722720361a374330a9acfd2f2438f1adc9ed Mon Sep 17 00:00:00 2001 From: Matt Bourne Date: Wed, 7 May 2025 19:28:37 +0100 Subject: [PATCH 09/12] Update Dockerfile --- Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Dockerfile b/Dockerfile index cc3e51407dc..ef2d24755fe 100644 --- a/Dockerfile +++ b/Dockerfile @@ -9,7 +9,7 @@ COPY . . RUN pnpm install # ✅ Fix: override Prisma client version -RUN pnpm add -w @prisma/client@5.3.1 +RUN pnpm add -w @prisma/client@5.2.0 # 🔧 Build internal packages first RUN pnpm build From a96589915a5d97ec6f91b745edf36fb608551a08 Mon Sep 17 00:00:00 2001 From: Matt Bourne Date: Wed, 7 May 2025 19:44:02 +0100 Subject: [PATCH 10/12] Update Dockerfile --- Dockerfile | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/Dockerfile b/Dockerfile index ef2d24755fe..17c3539b2bd 100644 --- a/Dockerfile +++ b/Dockerfile @@ -6,15 +6,12 @@ WORKDIR /app COPY . . -RUN pnpm install +RUN pnpm install --frozen-lockfile -# ✅ Fix: override Prisma client version -RUN pnpm add -w @prisma/client@5.2.0 +# ⬅️ Add this step to ensure Prisma types are generated +RUN npx prisma generate -# 🔧 Build internal packages first RUN pnpm build - -# 🔧 Then build the webapp RUN pnpm --filter webapp build EXPOSE 3000 From 6fd1bf33f8ea89b93c37832cd3970522b81150a1 Mon Sep 17 00:00:00 2001 From: Matt Bourne Date: Wed, 7 May 2025 20:15:08 +0100 Subject: [PATCH 11/12] Update Dockerfile --- Dockerfile | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/Dockerfile b/Dockerfile index 17c3539b2bd..234924ab8b6 100644 --- a/Dockerfile +++ b/Dockerfile @@ -8,14 +8,19 @@ COPY . . RUN pnpm install --frozen-lockfile -# ⬅️ Add this step to ensure Prisma types are generated -RUN npx prisma generate +# ✅ Generate Prisma client for @trigger.dev/database +WORKDIR /app/internal-packages/database +RUN pnpm exec prisma generate +# (optional) Run migrations if Prisma schema is ready +# ENV DATABASE_URL=postgres://... +# RUN pnpm exec prisma migrate deploy + +# 🔁 Go back to root and build everything +WORKDIR /app RUN pnpm build -RUN pnpm --filter webapp build EXPOSE 3000 WORKDIR /app/apps/webapp - CMD ["pnpm", "start"] From 9e4355ec985ffc09c17faee102c7fe6da1e4a1c8 Mon Sep 17 00:00:00 2001 From: Matt Bourne Date: Wed, 7 May 2025 21:17:24 +0100 Subject: [PATCH 12/12] Update Dockerfile --- Dockerfile | 13 ++++--------- 1 file changed, 4 insertions(+), 9 deletions(-) diff --git a/Dockerfile b/Dockerfile index 234924ab8b6..2f79660d2da 100644 --- a/Dockerfile +++ b/Dockerfile @@ -3,24 +3,19 @@ FROM node:18 RUN npm install -g pnpm WORKDIR /app - COPY . . +# Optional: show what's there for debug +RUN ls -la && ls -la internal-packages && ls -la apps + RUN pnpm install --frozen-lockfile -# ✅ Generate Prisma client for @trigger.dev/database WORKDIR /app/internal-packages/database RUN pnpm exec prisma generate +RUN pnpm exec prisma migrate deploy -# (optional) Run migrations if Prisma schema is ready -# ENV DATABASE_URL=postgres://... -# RUN pnpm exec prisma migrate deploy - -# 🔁 Go back to root and build everything WORKDIR /app RUN pnpm build -EXPOSE 3000 - WORKDIR /app/apps/webapp CMD ["pnpm", "start"]