feat: add Forge Dockerfile and docker-compose.yml
This commit is contained in:
@@ -0,0 +1,5 @@
|
|||||||
|
node_modules
|
||||||
|
dist
|
||||||
|
.git
|
||||||
|
*.log
|
||||||
|
.env
|
||||||
@@ -0,0 +1,7 @@
|
|||||||
|
# Path where Forge stores repos, server data, and config
|
||||||
|
WORKSPACE_PATH=~/layonara-workspace
|
||||||
|
|
||||||
|
# Path to your NWN documents directory
|
||||||
|
# Windows: C:\Users\<you>\Documents\Neverwinter Nights
|
||||||
|
# Linux: ~/.local/share/Neverwinter Nights
|
||||||
|
NWN_HOME_PATH=
|
||||||
+28
@@ -0,0 +1,28 @@
|
|||||||
|
FROM node:20-slim AS builder
|
||||||
|
|
||||||
|
WORKDIR /app
|
||||||
|
COPY package.json tsconfig.base.json ./
|
||||||
|
COPY packages/backend/package.json packages/backend/
|
||||||
|
COPY packages/frontend/package.json packages/frontend/
|
||||||
|
RUN npm install
|
||||||
|
|
||||||
|
COPY packages/ packages/
|
||||||
|
RUN npm run build
|
||||||
|
|
||||||
|
FROM node:20-slim
|
||||||
|
|
||||||
|
RUN apt-get update && apt-get install -y --no-install-recommends \
|
||||||
|
curl \
|
||||||
|
&& rm -rf /var/lib/apt/lists/*
|
||||||
|
|
||||||
|
WORKDIR /app
|
||||||
|
COPY package.json tsconfig.base.json ./
|
||||||
|
COPY packages/backend/package.json packages/backend/
|
||||||
|
COPY packages/frontend/package.json packages/frontend/
|
||||||
|
RUN npm install --omit=dev
|
||||||
|
|
||||||
|
COPY --from=builder /app/packages/backend/dist packages/backend/dist
|
||||||
|
COPY --from=builder /app/packages/frontend/dist packages/frontend/dist
|
||||||
|
|
||||||
|
EXPOSE 3000
|
||||||
|
CMD ["node", "packages/backend/dist/index.js"]
|
||||||
@@ -0,0 +1,14 @@
|
|||||||
|
services:
|
||||||
|
forge:
|
||||||
|
build: .
|
||||||
|
container_name: layonara-forge
|
||||||
|
restart: unless-stopped
|
||||||
|
ports:
|
||||||
|
- "3000:3000"
|
||||||
|
volumes:
|
||||||
|
- /var/run/docker.sock:/var/run/docker.sock
|
||||||
|
- ${WORKSPACE_PATH:-~/layonara-workspace}:/workspace
|
||||||
|
- ${NWN_HOME_PATH:-/dev/null}:/nwn-home:ro
|
||||||
|
environment:
|
||||||
|
- WORKSPACE_PATH=/workspace
|
||||||
|
- NWN_HOME_PATH=/nwn-home
|
||||||
Reference in New Issue
Block a user