Merge pull request #29 from abhi1693/chore/docker-compose-quickstart

Self-host: add Dockerfiles and compose quickstart
This commit is contained in:
Abhimanyu Saharan
2026-02-07 19:53:20 +05:30
committed by GitHub
3 changed files with 52 additions and 5 deletions

36
.dockerignore Normal file
View File

@@ -0,0 +1,36 @@
.git
.gitignore
.github
# Python
**/__pycache__
**/*.py[cod]
**/*.pyo
**/*.pyd
**/.pytest_cache
**/.mypy_cache
**/.ruff_cache
**/.coverage
**/htmlcov
**/*.egg-info
.venv
**/.venv
# Node / Next
**/node_modules
**/.next
**/dist
**/build
**/.turbo
# OS / editor
.DS_Store
*.swp
*.swo
# Local env files
**/.env
**/.env.*
# Logs
**/*.log

View File

@@ -33,9 +33,13 @@ COPY --from=deps /app/.venv /app/.venv
ENV PATH="/app/.venv/bin:${PATH}"
# Copy app source
COPY alembic ./alembic
COPY alembic.ini ./alembic.ini
COPY app ./app
COPY backend/alembic ./alembic
COPY backend/alembic.ini ./alembic.ini
COPY backend/app ./app
# Copy repo-level templates used by agent provisioning, etc.
# (backend code resolves these from repo root)
COPY templates ./templates
# Default API port
EXPOSE 8000

View File

@@ -31,7 +31,10 @@ services:
backend:
build:
context: ./backend
# Build from repo root so the backend image can include repo-level assets
# like `templates/`.
context: .
dockerfile: backend/Dockerfile
env_file:
- ./backend/.env.example
environment:
@@ -53,8 +56,12 @@ services:
context: ./frontend
args:
NEXT_PUBLIC_API_URL: ${NEXT_PUBLIC_API_URL:-http://localhost:8000}
# Optional, user-managed env file.
# IMPORTANT: do NOT load `.env.example` here because it contains non-empty
# placeholder Clerk keys, which can accidentally flip Clerk "on".
env_file:
- ./frontend/.env.example
- path: ./frontend/.env
required: false
environment:
NEXT_PUBLIC_API_URL: ${NEXT_PUBLIC_API_URL:-http://localhost:8000}
depends_on: