diff --git a/docker-compose.dev.yml b/docker-compose.dev.yml index 0ed952d..7335ca7 100644 --- a/docker-compose.dev.yml +++ b/docker-compose.dev.yml @@ -5,13 +5,21 @@ services: server: build: + context: . + dockerfile: packages/server/Dockerfile target: deps - command: sh -c "npx prisma generate --schema=prisma/schema.prisma && pnpm --filter @agent-fox/server dev" + command: > + sh -c " + npx prisma generate --schema=prisma/schema.prisma && + cd /app/packages/shared && npx tsc && + cd /app && + pnpm --filter @agent-fox/server dev + " volumes: - ./packages/shared/src:/app/packages/shared/src + - ./packages/shared/tsconfig.json:/app/packages/shared/tsconfig.json - ./packages/server/src:/app/packages/server/src - ./prisma:/app/prisma - - ./tsconfig.base.json:/app/tsconfig.base.json environment: DATABASE_URL: postgresql://agentfox:agentfox@postgres:5432/agentfox JWT_SECRET: dev-secret @@ -21,24 +29,36 @@ services: mcp: build: + context: . + dockerfile: packages/mcp/Dockerfile target: deps - command: sh -c "npx prisma generate --schema=prisma/schema.prisma && pnpm --filter @agent-fox/mcp dev" + command: > + sh -c " + npx prisma generate --schema=prisma/schema.prisma && + cd /app/packages/shared && npx tsc && + cd /app && + pnpm --filter @agent-fox/mcp dev + " volumes: - ./packages/shared/src:/app/packages/shared/src + - ./packages/shared/tsconfig.json:/app/packages/shared/tsconfig.json - ./packages/mcp/src:/app/packages/mcp/src - ./prisma:/app/prisma - - ./tsconfig.base.json:/app/tsconfig.base.json environment: DATABASE_URL: postgresql://agentfox:agentfox@postgres:5432/agentfox MCP_PORT: "3001" NODE_ENV: development web: - image: node:20-alpine - working_dir: /app - command: sh -c "corepack enable && corepack prepare pnpm@latest --activate && pnpm install && pnpm --filter @agent-fox/web dev -- --host 0.0.0.0" + build: + context: . + dockerfile: packages/web/Dockerfile + target: build + command: > + sh -c "pnpm --filter @agent-fox/web dev -- --host 0.0.0.0" volumes: - - .:/app + - ./packages/web/src:/app/packages/web/src + - ./packages/web/index.html:/app/packages/web/index.html ports: - "5173:5173" environment: diff --git a/packages/mcp/Dockerfile b/packages/mcp/Dockerfile index 93a12b9..a2f4481 100644 --- a/packages/mcp/Dockerfile +++ b/packages/mcp/Dockerfile @@ -3,9 +3,11 @@ RUN corepack enable && corepack prepare pnpm@latest --activate WORKDIR /app FROM base AS deps -COPY pnpm-lock.yaml pnpm-workspace.yaml package.json ./ +COPY pnpm-lock.yaml pnpm-workspace.yaml package.json tsconfig.base.json ./ COPY packages/shared/package.json packages/shared/ +COPY packages/shared/tsconfig.json packages/shared/ COPY packages/mcp/package.json packages/mcp/ +COPY packages/mcp/tsconfig.json packages/mcp/ COPY prisma/ prisma/ RUN pnpm install --frozen-lockfile diff --git a/packages/server/Dockerfile b/packages/server/Dockerfile index aa4c0b2..3aae8ab 100644 --- a/packages/server/Dockerfile +++ b/packages/server/Dockerfile @@ -3,9 +3,11 @@ RUN corepack enable && corepack prepare pnpm@latest --activate WORKDIR /app FROM base AS deps -COPY pnpm-lock.yaml pnpm-workspace.yaml package.json ./ +COPY pnpm-lock.yaml pnpm-workspace.yaml package.json tsconfig.base.json ./ COPY packages/shared/package.json packages/shared/ +COPY packages/shared/tsconfig.json packages/shared/ COPY packages/server/package.json packages/server/ +COPY packages/server/tsconfig.json packages/server/ COPY prisma/ prisma/ RUN pnpm install --frozen-lockfile