From 7e517b58013e636b2eb1f3a793d38ee0cb96457b Mon Sep 17 00:00:00 2001 From: Kelly Date: Tue, 9 Dec 2025 13:07:21 -0700 Subject: [PATCH] ci: Use self-hosted base images to avoid Docker Hub rate limits MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Cached node:20, node:20-slim, and nginx:alpine to code.cannabrands.app. No more Docker Hub dependency for builds. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 --- .woodpecker/.ci.yml | 8 ++++---- backend/Dockerfile | 4 ++-- cannaiq/Dockerfile | 4 ++-- findadispo/frontend/Dockerfile | 4 ++-- findagram/frontend/Dockerfile | 4 ++-- 5 files changed, 12 insertions(+), 12 deletions(-) diff --git a/.woodpecker/.ci.yml b/.woodpecker/.ci.yml index f5d3b9f0..c48061a7 100644 --- a/.woodpecker/.ci.yml +++ b/.woodpecker/.ci.yml @@ -6,7 +6,7 @@ steps: # PR VALIDATION: Parallel type checks (PRs only) # =========================================== typecheck-backend: - image: node:20 + image: code.cannabrands.app/creationshop/node:20 commands: - cd backend - npm ci --prefer-offline @@ -16,7 +16,7 @@ steps: event: pull_request typecheck-cannaiq: - image: node:20 + image: code.cannabrands.app/creationshop/node:20 commands: - cd cannaiq - npm ci --prefer-offline @@ -26,7 +26,7 @@ steps: event: pull_request typecheck-findadispo: - image: node:20 + image: code.cannabrands.app/creationshop/node:20 commands: - cd findadispo/frontend - npm ci --prefer-offline @@ -36,7 +36,7 @@ steps: event: pull_request typecheck-findagram: - image: node:20 + image: code.cannabrands.app/creationshop/node:20 commands: - cd findagram/frontend - npm ci --prefer-offline diff --git a/backend/Dockerfile b/backend/Dockerfile index 033ab9c0..e953efde 100644 --- a/backend/Dockerfile +++ b/backend/Dockerfile @@ -1,6 +1,6 @@ # Build stage # Image: code.cannabrands.app/creationshop/dispensary-scraper -FROM node:20-slim AS builder +FROM code.cannabrands.app/creationshop/node:20-slim AS builder WORKDIR /app @@ -11,7 +11,7 @@ COPY . . RUN npm run build # Production stage -FROM node:20-slim +FROM code.cannabrands.app/creationshop/node:20-slim # Build arguments for version info ARG APP_BUILD_VERSION=dev diff --git a/cannaiq/Dockerfile b/cannaiq/Dockerfile index 4f901573..3f2608b3 100644 --- a/cannaiq/Dockerfile +++ b/cannaiq/Dockerfile @@ -1,5 +1,5 @@ # Build stage -FROM node:20-slim AS builder +FROM code.cannabrands.app/creationshop/node:20-slim AS builder WORKDIR /app @@ -20,7 +20,7 @@ COPY . . RUN npm run build # Production stage -FROM nginx:alpine +FROM code.cannabrands.app/creationshop/nginx:alpine # Copy built assets from builder stage COPY --from=builder /app/dist /usr/share/nginx/html diff --git a/findadispo/frontend/Dockerfile b/findadispo/frontend/Dockerfile index 6a41a352..683b03ee 100644 --- a/findadispo/frontend/Dockerfile +++ b/findadispo/frontend/Dockerfile @@ -1,5 +1,5 @@ # Build stage -FROM node:20-slim AS builder +FROM code.cannabrands.app/creationshop/node:20-slim AS builder WORKDIR /app @@ -20,7 +20,7 @@ ENV REACT_APP_API_URL=https://cannaiq.co RUN npm run build # Production stage -FROM nginx:alpine +FROM code.cannabrands.app/creationshop/nginx:alpine # Copy built assets from builder stage (CRA outputs to /build) COPY --from=builder /app/build /usr/share/nginx/html diff --git a/findagram/frontend/Dockerfile b/findagram/frontend/Dockerfile index 6a41a352..683b03ee 100644 --- a/findagram/frontend/Dockerfile +++ b/findagram/frontend/Dockerfile @@ -1,5 +1,5 @@ # Build stage -FROM node:20-slim AS builder +FROM code.cannabrands.app/creationshop/node:20-slim AS builder WORKDIR /app @@ -20,7 +20,7 @@ ENV REACT_APP_API_URL=https://cannaiq.co RUN npm run build # Production stage -FROM nginx:alpine +FROM code.cannabrands.app/creationshop/nginx:alpine # Copy built assets from builder stage (CRA outputs to /build) COPY --from=builder /app/build /usr/share/nginx/html