fix: fix pipeline docker build with new external lib
This commit is contained in:
32
.dockerignore
Normal file
32
.dockerignore
Normal file
@@ -0,0 +1,32 @@
|
|||||||
|
# Dependencies
|
||||||
|
**/node_modules
|
||||||
|
|
||||||
|
# Build outputs
|
||||||
|
**/dist
|
||||||
|
**/.output
|
||||||
|
**/.nuxt
|
||||||
|
|
||||||
|
# Database data
|
||||||
|
dev/data/db
|
||||||
|
|
||||||
|
# Git
|
||||||
|
**/.git
|
||||||
|
|
||||||
|
# IDE
|
||||||
|
**/.idea
|
||||||
|
**/.vscode
|
||||||
|
|
||||||
|
# Environment files
|
||||||
|
**/.env
|
||||||
|
**/.env.*
|
||||||
|
|
||||||
|
# Logs
|
||||||
|
**/*.log
|
||||||
|
**/logs
|
||||||
|
|
||||||
|
# Test coverage
|
||||||
|
**/coverage
|
||||||
|
|
||||||
|
# OS files
|
||||||
|
.DS_Store
|
||||||
|
Thumbs.db
|
||||||
@@ -72,7 +72,8 @@ jobs:
|
|||||||
- name: Build and push frontend docker image
|
- name: Build and push frontend docker image
|
||||||
uses: docker/build-push-action@v6
|
uses: docker/build-push-action@v6
|
||||||
with:
|
with:
|
||||||
context: ./frontend
|
context: .
|
||||||
|
file: ./frontend/Dockerfile
|
||||||
push: true
|
push: true
|
||||||
tags: |
|
tags: |
|
||||||
git.vhaudiquet.fr/vhaudiquet/lolstats-frontend:latest
|
git.vhaudiquet.fr/vhaudiquet/lolstats-frontend:latest
|
||||||
@@ -90,7 +91,8 @@ jobs:
|
|||||||
- name: Build and push match_collector docker image
|
- name: Build and push match_collector docker image
|
||||||
uses: docker/build-push-action@v6
|
uses: docker/build-push-action@v6
|
||||||
with:
|
with:
|
||||||
context: ./match_collector
|
context: .
|
||||||
|
file: ./match_collector/Dockerfile
|
||||||
push: true
|
push: true
|
||||||
tags: |
|
tags: |
|
||||||
git.vhaudiquet.fr/vhaudiquet/lolstats-match_collector:latest
|
git.vhaudiquet.fr/vhaudiquet/lolstats-match_collector:latest
|
||||||
|
|||||||
@@ -2,12 +2,23 @@ FROM node:current-alpine AS base
|
|||||||
WORKDIR /app
|
WORKDIR /app
|
||||||
|
|
||||||
FROM base AS build
|
FROM base AS build
|
||||||
COPY package*.json ./
|
|
||||||
|
# Copy and build dragon-item-parser first
|
||||||
|
COPY dragon-item-parser/package*.json ./dragon-item-parser/
|
||||||
|
COPY dragon-item-parser/tsconfig.json ./dragon-item-parser/
|
||||||
|
COPY dragon-item-parser/src ./dragon-item-parser/src
|
||||||
|
WORKDIR /app/dragon-item-parser
|
||||||
|
RUN npm install && npm run build
|
||||||
|
|
||||||
|
# Build the frontend
|
||||||
|
WORKDIR /app
|
||||||
|
COPY frontend/package*.json ./frontend/
|
||||||
|
WORKDIR /app/frontend
|
||||||
RUN npm install
|
RUN npm install
|
||||||
COPY . .
|
COPY frontend/. .
|
||||||
RUN npm run build
|
RUN npm run build
|
||||||
|
|
||||||
FROM base
|
FROM base
|
||||||
COPY --from=build /app/.output /app/.output
|
COPY --from=build /app/frontend/.output /app/.output
|
||||||
EXPOSE 3000
|
EXPOSE 3000
|
||||||
CMD ["node", ".output/server/index.mjs"]
|
CMD ["node", ".output/server/index.mjs"]
|
||||||
|
|||||||
@@ -1,8 +1,28 @@
|
|||||||
FROM node:lts-alpine
|
# This Dockerfile should be built from the project root directory:
|
||||||
RUN mkdir -p /home/node/app/node_modules && chown -R node:node /home/node/app
|
# docker build -f match_collector/Dockerfile -t buildpath-match_collector .
|
||||||
|
|
||||||
|
FROM node:current-alpine AS build
|
||||||
|
RUN mkdir -p /home/node/app && chown -R node:node /home/node/app
|
||||||
|
WORKDIR /home/node/app
|
||||||
|
|
||||||
|
# Copy and build dragon-item-parser first
|
||||||
|
COPY --chown=node:node dragon-item-parser/package*.json ./dragon-item-parser/
|
||||||
|
COPY --chown=node:node dragon-item-parser/tsconfig.json ./dragon-item-parser/
|
||||||
|
COPY --chown=node:node dragon-item-parser/src ./dragon-item-parser/src
|
||||||
|
WORKDIR /home/node/app/dragon-item-parser
|
||||||
|
RUN npm install && npm run build
|
||||||
|
|
||||||
|
# Build match_collector
|
||||||
|
WORKDIR /home/node/app
|
||||||
|
COPY --chown=node:node match_collector/package*.json ./match_collector/
|
||||||
|
WORKDIR /home/node/app/match_collector
|
||||||
|
RUN npm install
|
||||||
|
COPY --chown=node:node match_collector/. .
|
||||||
|
|
||||||
|
FROM node:current-alpine
|
||||||
|
RUN mkdir -p /home/node/app && chown -R node:node /home/node/app
|
||||||
WORKDIR /home/node/app
|
WORKDIR /home/node/app
|
||||||
USER node
|
USER node
|
||||||
COPY --chown=node:node package*.json ./
|
COPY --from=build --chown=node:node /home/node/app/match_collector/node_modules ./node_modules
|
||||||
RUN npm install
|
COPY --from=build --chown=node:node /home/node/app/match_collector/. .
|
||||||
COPY --chown=node:node . .
|
CMD ["/bin/sh", "-c", "node --import=tsx src/index.ts; sleep 20h"]
|
||||||
CMD ["/bin/sh", "-c", "node --import=tsx src/index.ts; sleep 20h"]
|
|
||||||
|
|||||||
Reference in New Issue
Block a user