diff --git a/Dockerfile b/Dockerfile index f376c6c..0a4e329 100644 --- a/Dockerfile +++ b/Dockerfile @@ -4,14 +4,16 @@ FROM node:20-alpine AS builder WORKDIR /app # Copy package files -COPY package*.json ./ -COPY prisma ./prisma/ +COPY rvote-online/package*.json ./ +COPY rvote-online/prisma ./prisma/ +# Copy local SDK dependency (package.json references file:../encryptid-sdk) +COPY encryptid-sdk /encryptid-sdk/ # Install dependencies -RUN npm ci +RUN npm ci || npm install # Copy source files -COPY . . +COPY rvote-online/ . # Generate Prisma client RUN npx prisma generate diff --git a/docker-compose.yml b/docker-compose.yml index 0d5792e..ca548e2 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -1,6 +1,8 @@ services: rvote: - build: . + build: + context: .. + dockerfile: rvote-online/Dockerfile restart: unless-stopped labels: - "traefik.enable=true" diff --git a/package-lock.json b/package-lock.json index a1242a2..782322c 100644 --- a/package-lock.json +++ b/package-lock.json @@ -9,6 +9,7 @@ "version": "0.1.0", "dependencies": { "@auth/prisma-adapter": "^2.11.1", + "@encryptid/sdk": "file:../encryptid-sdk", "@prisma/client": "^6.19.2", "bcryptjs": "^3.0.3", "class-variance-authority": "^0.7.1", @@ -39,6 +40,30 @@ "typescript": "^5" } }, + "../encryptid-sdk": { + "name": "@encryptid/sdk", + "version": "0.1.0", + "license": "MIT", + "dependencies": { + "hono": "^4.11.0" + }, + "devDependencies": { + "@types/react": "^19.0.0", + "typescript": "^5.7.0" + }, + "peerDependencies": { + "next": ">=14.0.0", + "react": ">=18.0.0" + }, + "peerDependenciesMeta": { + "next": { + "optional": true + }, + "react": { + "optional": true + } + } + }, "node_modules/@alloc/quick-lru": { "version": "5.2.0", "resolved": "https://registry.npmjs.org/@alloc/quick-lru/-/quick-lru-5.2.0.tgz", @@ -395,6 +420,10 @@ "tslib": "^2.4.0" } }, + "node_modules/@encryptid/sdk": { + "resolved": "../encryptid-sdk", + "link": true + }, "node_modules/@eslint-community/eslint-utils": { "version": "4.9.1", "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.9.1.tgz",