dockerize

This commit is contained in:
2026-06-15 23:36:06 -06:00
parent 6e1263feac
commit a9ff12805f
3 changed files with 43 additions and 0 deletions

5
.dockerignore Normal file
View File

@@ -0,0 +1,5 @@
node_modules
dist
.env
data
*.log

24
Dockerfile Normal file
View File

@@ -0,0 +1,24 @@
# Build frontend
FROM oven/bun:1 AS builder
WORKDIR /app
COPY package.json bun.lock ./
RUN bun install --frozen-lockfile
COPY . .
RUN bun run build
# Production runtime
FROM oven/bun:1-slim AS runner
WORKDIR /app
COPY package.json bun.lock ./
RUN bun install --frozen-lockfile --production
COPY server/ ./server/
COPY --from=builder /app/dist ./dist/
RUN mkdir -p data
EXPOSE 3001
CMD ["bun", "run", "server/index.ts"]

14
docker-compose.yml Normal file
View File

@@ -0,0 +1,14 @@
services:
app:
build: .
ports:
- "3001:3001"
environment:
- DEEPSEEK_API_KEY=${DEEPSEEK_API_KEY}
- TEACHING_BOOKS_DB=/app/data/teaching-books.db
volumes:
- db_data:/app/data
restart: unless-stopped
volumes:
db_data: