1차 인프라 구성

upload
jaehwang 2026-04-20 13:52:31 +09:00
parent 6147516da7
commit 4f42efde18
5 changed files with 87 additions and 0 deletions

44
.gitignore vendored Normal file
View File

@ -0,0 +1,44 @@
# Python
__pycache__/
*.py[cod]
*$py.class
*.so
.Python
build/
dist/
*.egg-info/
.eggs/
*.egg
# Virtual environments
.venv/
venv/
env/
ENV/
# Environment variables
.env
.env.local
.env.*.local
# IDE
.vscode/
.idea/
*.swp
*.swo
# Testing
.pytest_cache/
.coverage
htmlcov/
.tox/
# Docker
*.log
# OS
.DS_Store
Thumbs.db
# Alembic
alembic/versions/*.pyc

15
Dockerfile Normal file
View File

@ -0,0 +1,15 @@
FROM python:3.13-slim
WORKDIR /app
ENV PYTHONDONTWRITEBYTECODE=1 \
PYTHONUNBUFFERED=1
RUN apt-get update && apt-get install -y --no-install-recommends \
gcc \
&& rm -rf /var/lib/apt/lists/*
COPY requirements.txt .
RUN pip install --no-cache-dir -r requirements.txt
CMD ["uvicorn", "main:app", "--host", "0.0.0.0", "--port", "8000", "--reload"]

8
app/main.py Normal file
View File

@ -0,0 +1,8 @@
from fastapi import FastAPI
app = FastAPI()
@app.get("/health")
def health():
return {"status": "ok"}

11
docker-compose.yml Normal file
View File

@ -0,0 +1,11 @@
services:
o2o-infinith-backend:
build:
context: .
dockerfile: Dockerfile
container_name: o2o-infinith-api
ports:
- "8000:8000"
volumes:
- ./app:/app
restart: unless-stopped

9
requirements.txt Normal file
View File

@ -0,0 +1,9 @@
fastapi==0.136.0
uvicorn[standard]==0.44.0
pydantic==2.13.2
pydantic-settings==2.13.1
redis==7.4.0
httpx==0.28.1
python-jose[cryptography]==3.5.0
passlib[bcrypt]==1.7.4
python-multipart==0.0.26