k-l-lambda commited on
Commit
006b994
·
1 Parent(s): 255c58f

Test: run TypeScript directly with tsx

Browse files
Files changed (1) hide show
  1. Dockerfile +6 -20
Dockerfile CHANGED
@@ -2,35 +2,20 @@ FROM node:20-slim
2
 
3
  ENV DEBIAN_FRONTEND=noninteractive
4
 
5
- # Build timestamp: 2026-01-13T04:00
6
 
7
  WORKDIR /app
8
 
9
- # Install esbuild globally
10
- RUN npm install -g esbuild
11
-
12
- # Copy backend package.json and install deps
13
  COPY trigo-web/backend/package.json ./package.json
14
- RUN npm install --omit=dev
15
 
16
  # Copy backend source
17
- RUN mkdir -p backend/dist/backend/src
18
  COPY trigo-web/backend/src/ ./backend/src/
19
 
20
- # Copy inc folder (needed for esbuild)
21
  COPY trigo-web/inc/ ./inc/
22
 
23
- # Bundle with ESM format, external deps
24
- RUN esbuild backend/src/server.ts --bundle --platform=node --target=node20 --format=esm \
25
- --outfile=backend/dist/backend/src/server.js \
26
- --external:express --external:socket.io --external:cors --external:dotenv --external:uuid
27
-
28
- # Create symlinks so node can find modules from deep paths
29
- RUN ln -s /app/node_modules /app/backend/node_modules && \
30
- ln -s /app/node_modules /app/backend/dist/node_modules && \
31
- ln -s /app/node_modules /app/backend/dist/backend/node_modules && \
32
- ln -s /app/node_modules /app/backend/dist/backend/src/node_modules
33
-
34
  # Copy frontend dist
35
  COPY trigo-web/app/dist/ ./app/dist/
36
 
@@ -44,4 +29,5 @@ ENV NODE_ENV=production
44
 
45
  EXPOSE 7860
46
 
47
- CMD ["node", "backend/dist/backend/src/server.js"]
 
 
2
 
3
  ENV DEBIAN_FRONTEND=noninteractive
4
 
5
+ # Build timestamp: 2026-01-13T04:10
6
 
7
  WORKDIR /app
8
 
9
+ # Copy backend package.json and install ALL deps (including dev for tsx)
 
 
 
10
  COPY trigo-web/backend/package.json ./package.json
11
+ RUN npm install
12
 
13
  # Copy backend source
 
14
  COPY trigo-web/backend/src/ ./backend/src/
15
 
16
+ # Copy inc folder
17
  COPY trigo-web/inc/ ./inc/
18
 
 
 
 
 
 
 
 
 
 
 
 
19
  # Copy frontend dist
20
  COPY trigo-web/app/dist/ ./app/dist/
21
 
 
29
 
30
  EXPOSE 7860
31
 
32
+ # Run TypeScript directly with tsx
33
+ CMD ["npx", "tsx", "backend/src/server.ts"]