File size: 929 Bytes
d1cd674
2805a1e
 
517ca61
d1cd674
acf4d84
2805a1e
d1cd674
 
2805a1e
d1cd674
acf4d84
2805a1e
d1cd674
 
 
acf4d84
 
 
2805a1e
acf4d84
2805a1e
d1cd674
c1fc8d2
d1cd674
c1fc8d2
 
d1cd674
 
 
c1fc8d2
 
d1cd674
c1fc8d2
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
FROM node:20.18.0

WORKDIR /app

# Install pnpm
RUN corepack enable pnpm

# Copy package files
COPY package.json pnpm-lock.yaml ./

# Install dependencies
RUN pnpm install --prod

# Copy the rest of the application
COPY . .

# Set production environment
ENV NODE_ENV=production
ENV PORT=7860

EXPOSE 7860

# Create a simple static file server
RUN echo 'const express = require("express");' > server.js && \
    echo 'const path = require("path");' >> server.js && \
    echo 'const app = express();' >> server.js && \
    echo 'app.use(express.static("public"));' >> server.js && \
    echo 'app.get("*", (req, res) => {' >> server.js && \
    echo '  res.sendFile(path.join(__dirname, "public", "index.html"));' >> server.js && \
    echo '});' >> server.js && \
    echo 'app.listen(process.env.PORT, () => console.log(`Server running on port ${process.env.PORT}`));' >> server.js

# Start the server
CMD ["node", "server.js"]