You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
43 lines
795 B
43 lines
795 B
FROM node:18-alpine
|
|
|
|
WORKDIR /app
|
|
|
|
# Install build dependencies for native modules (better-sqlite3, bcrypt)
|
|
RUN apk add --no-cache python3 make g++
|
|
|
|
# Copy package files
|
|
COPY package*.json ./
|
|
|
|
# Install dependencies
|
|
RUN npm install
|
|
|
|
# Copy application files
|
|
COPY server.js ./
|
|
COPY database.js ./
|
|
COPY index.html ./
|
|
COPY admin.html ./
|
|
COPY animations.js ./
|
|
COPY manifest.json ./
|
|
COPY service-worker.js ./
|
|
|
|
# Copy .env file if it exists (for VAPID keys)
|
|
COPY .env* ./
|
|
|
|
# Copy PWA icons
|
|
COPY icon-*.png ./
|
|
|
|
# Copy monster images
|
|
COPY mapgameimgs ./mapgameimgs
|
|
|
|
# Copy game music
|
|
COPY mapgamemusic ./mapgamemusic
|
|
|
|
# Copy .well-known directory for app verification
|
|
COPY .well-known ./.well-known
|
|
|
|
# Copy default.kml if it exists (optional)
|
|
COPY default.kml* ./
|
|
|
|
EXPOSE 8080
|
|
|
|
CMD ["node", "server.js"]
|