Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion backend/api/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -8,4 +8,4 @@ COPY ./envs/backend.env /opt/.env
COPY ./backend/api /app/api
COPY ./backend/shared_mcp /app/shared_mcp
ENV PYTHONPATH /app:$PYTHONPATH
ENTRYPOINT ["uv", "run", "fastapi", "run", "api/main.py"]
ENTRYPOINT ["uv", "run", "fastapi", "run", "api/main.py", "--root-path=/api"]
5 changes: 2 additions & 3 deletions backend/mcp/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -4,10 +4,9 @@ WORKDIR /app
COPY ./backend/mcp/uv.lock ./backend/mcp/pyproject.toml .
RUN uv sync --frozen && rm ./uv.lock ./pyproject.toml
RUN apt-get update && apt-get install -y --no-install-recommends \
curl && \
curl -fsSL https://deb.nodesource.com/setup_20.x | bash - && \
apt-get install -y --no-install-recommends nodejs
curl
COPY ./backend/mcp ./mcp
COPY ./backend/shared_mcp ./shared_mcp
ENV PYTHONPATH /app:$PYTHONPATH
ENV PATH /app:$PATH
ENTRYPOINT ["uv", "run", "mcp/main.py"]
11 changes: 10 additions & 1 deletion compose-dev.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ services:
build:
context: .
dockerfile: ./backend/api/Dockerfile
entrypoint: bash -c "uv run fastapi run api/main.py --reload"
entrypoint: uv run fastapi run api/main.py --root-path=/api --reload
env_file:
- ./envs/shared_mcp.env
ports:
Expand All @@ -21,6 +21,15 @@ services:
dockerfile: ./backend/mcp/Dockerfile
env_file:
- ./envs/shared_mcp.env
ports:
- 8050:8050
volumes:
- ./backend/mcp:/app/mcp
- ./backend/shared_mcp:/app/shared_mcp

nginx:
image: nginx:1.26.3-alpine
ports:
- 80:80
volumes:
- ./nginx/nginx.conf:/etc/nginx/conf.d/default.conf
16 changes: 16 additions & 0 deletions compose.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -15,3 +15,19 @@ services:
env_file:
- ./envs/shared_mcp.env
restart: unless-stopped

nginx:
image: nginx:1.26.3-alpine
ports:
- 80:80
volumes:
- ./nginx/nginx.conf:/etc/nginx/conf.d/default.conf
restart: unless-stopped
depends_on:
api:
condition: service_healthy
healthcheck:
test: curl -f http://localhost/docs
interval: 30s
timeout: 10s
retries: 3
35 changes: 35 additions & 0 deletions nginx/nginx.conf
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
upstream api {
server api:8000;
}

server {
listen 80;

location / {
return 301 /api/docs;
}

location /api/ {
add_header Access-Control-Allow-Origin "*";
add_header Access-Control-Allow-Methods "GET, POST, PUT, DELETE, OPTIONS, HEAD";
add_header Access-Control-Allow-Headers "content-type";

proxy_set_header Cache-Control 'no-cache';
proxy_set_header Content-Type $http_content_type;
proxy_set_header X-Accel-Buffering 'no';

proxy_http_version 1.1;
proxy_set_header Connection "";
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Host $host;

proxy_buffering off;
proxy_redirect off;
proxy_pass http://api/;
}

location /api/docs {
proxy_redirect off;
proxy_pass http://api/docs;
}
}