From 63d7f54002b16b6235d6fa3dbb940a87e2cf6013 Mon Sep 17 00:00:00 2001 From: GXiang314 Date: Mon, 13 Jan 2025 20:34:03 +0800 Subject: [PATCH 01/10] =?UTF-8?q?build:=20pnpm=20=E5=B0=8E=E5=85=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .dockerignore | 9 + Dockerfile.heartbeat.dev | 16 + Dockerfile.lobby.dev | 18 + apps/backend/package.json | 6 +- apps/backend/src/index.ts | 2 - apps/frontend/package.json | 7 +- apps/frontend/pages/room.vue | 2 +- apps/frontend/stores/room.ts | 2 +- apps/heartbeat/.env.development | 2 +- apps/heartbeat/package.json | 4 +- apps/heartbeat/src/services/game-service.ts | 8 +- apps/nginx/default.conf.dev | 6 +- docker-compose.dev.yml | 67 + docker-compose.yml.dev | 84 - package.json | 17 + .../domain/src/aggregate/room/entity/index.ts | 106 +- packages/socket/package.json | 2 +- pnpm-lock.yaml | 12054 ++++++++++++++++ pnpm-workspace.yaml | 3 + turbo.json | 17 + 20 files changed, 12274 insertions(+), 158 deletions(-) create mode 100644 .dockerignore create mode 100644 Dockerfile.heartbeat.dev create mode 100644 Dockerfile.lobby.dev create mode 100644 docker-compose.dev.yml delete mode 100644 docker-compose.yml.dev create mode 100644 package.json create mode 100644 pnpm-lock.yaml create mode 100644 pnpm-workspace.yaml create mode 100644 turbo.json diff --git a/.dockerignore b/.dockerignore new file mode 100644 index 0000000..bb34384 --- /dev/null +++ b/.dockerignore @@ -0,0 +1,9 @@ +node_modules +.git +.gitignore +*.md +dist +**/dist +**/.vscode +**/.nuxt +**/.output \ No newline at end of file diff --git a/Dockerfile.heartbeat.dev b/Dockerfile.heartbeat.dev new file mode 100644 index 0000000..d370647 --- /dev/null +++ b/Dockerfile.heartbeat.dev @@ -0,0 +1,16 @@ +FROM node:20-slim +ENV PNPM_HOME="/pnpm" +ENV PATH="$PNPM_HOME:$PATH" +RUN corepack enable + +WORKDIR /app +COPY apps/heartbeat /app/apps/heartbeat +COPY packages /app/packages +COPY turbo.json /app +COPY pnpm-lock.yaml /app +COPY pnpm-workspace.yaml /app +COPY package.json /app + +RUN --mount=type=cache,id=pnpm,target=/pnpm/store pnpm install --frozen-lockfile +EXPOSE 2999 +CMD [ "pnpm", "dev" ] \ No newline at end of file diff --git a/Dockerfile.lobby.dev b/Dockerfile.lobby.dev new file mode 100644 index 0000000..2f9a269 --- /dev/null +++ b/Dockerfile.lobby.dev @@ -0,0 +1,18 @@ +FROM node:20-slim +ENV PNPM_HOME="/pnpm" +ENV PATH="$PNPM_HOME:$PATH" +RUN corepack enable + +WORKDIR /app +COPY ./apps/frontend /app/apps/frontend +COPY ./apps/backend /app/apps/backend +COPY ./packages /app/packages +COPY ./turbo.json /app +COPY ./pnpm-lock.yaml /app +COPY ./pnpm-workspace.yaml /app +COPY ./package.json /app +RUN --mount=type=cache,id=pnpm,target=/pnpm/store pnpm install --frozen-lockfile + +EXPOSE 3000 +EXPOSE 3001 +CMD [ "pnpm", "dev" ] \ No newline at end of file diff --git a/apps/backend/package.json b/apps/backend/package.json index 639aeaf..b99e4b9 100644 --- a/apps/backend/package.json +++ b/apps/backend/package.json @@ -1,5 +1,5 @@ { - "name": "lobby-backend", + "name": "backend", "version": "0.0.0", "description": "", "main": "src/index.ts", @@ -82,8 +82,8 @@ "typescript-eslint": "^7.7.1" }, "dependencies": { - "@packages/domain": "file:../../packages/domain", - "@packages/socket": "file:../../packages/socket", + "@packages/domain": "workspace:*", + "@packages/socket": "workspace:*", "axios": "^1.7.2", "dotenv": "^16.4.5", "fastify": "^4.26.2", diff --git a/apps/backend/src/index.ts b/apps/backend/src/index.ts index 4143333..7936d6c 100644 --- a/apps/backend/src/index.ts +++ b/apps/backend/src/index.ts @@ -27,8 +27,6 @@ import { GetNewStatusHandler } from './middlewares/get-new-status' app.register(socketIO, { cors: { origin: '*' } }) // prefix api app.register(RoomRoutes, { prefix: '/api/rooms' }) - // app.register(GameRoutes, { prefix: '/api/games' }) - // app.register(UserRoutes, { prefix: '/api/users' }) app.ready(async (err) => { if (err) throw err container.registerInstance('ServerSocket', app.io) diff --git a/apps/frontend/package.json b/apps/frontend/package.json index 21e2ea1..b441f7c 100644 --- a/apps/frontend/package.json +++ b/apps/frontend/package.json @@ -1,5 +1,5 @@ { - "name": "nuxt-app", + "name": "frontend", "private": true, "type": "module", "scripts": { @@ -11,9 +11,10 @@ }, "dependencies": { "@auth0/auth0-spa-js": "^2.1.3", - "@packages/domain": "file:../../packages/domain", - "@packages/socket": "file:../../packages/socket", + "@packages/domain": "workspace:*", + "@packages/socket": "workspace:*", "@pinia/nuxt": "^0.5.1", + "lodash-es": "^4.17.21", "nuxt": "^3.11.2", "pinia": "^2.1.7", "primevue": "^3.52.0", diff --git a/apps/frontend/pages/room.vue b/apps/frontend/pages/room.vue index 561ea00..47ce3e6 100644 --- a/apps/frontend/pages/room.vue +++ b/apps/frontend/pages/room.vue @@ -38,7 +38,7 @@