diff --git a/docker-compose.yml b/docker-compose.yml index c242bee..bec708d 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -89,6 +89,25 @@ services: timeout: 5s retries: 3 + realestate-lab: + build: + context: ./realestate-lab + container_name: realestate-lab + restart: unless-stopped + ports: + - "18800:8000" + environment: + - TZ=${TZ:-Asia/Seoul} + - DATA_GO_KR_API_KEY=${DATA_GO_KR_API_KEY:-} + - CORS_ALLOW_ORIGINS=${CORS_ALLOW_ORIGINS:-http://localhost:3007,http://localhost:8080} + volumes: + - ${REALESTATE_DATA_PATH:-./data/realestate}:/app/data + healthcheck: + test: ["CMD", "python", "-c", "import urllib.request; urllib.request.urlopen('http://localhost:8000/health')"] + interval: 30s + timeout: 5s + retries: 3 + travel-proxy: build: ./travel-proxy container_name: travel-proxy @@ -119,6 +138,7 @@ services: depends_on: - music-lab - blog-lab + - realestate-lab ports: - "8080:80" volumes: diff --git a/nginx/default.conf b/nginx/default.conf index 8496087..5284dc3 100644 --- a/nginx/default.conf +++ b/nginx/default.conf @@ -42,6 +42,16 @@ server { proxy_pass http://$music_backend$request_uri; } + # realestate API + location /api/realestate/ { + proxy_http_version 1.1; + proxy_set_header Host $host; + proxy_set_header X-Real-IP $remote_addr; + proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; + proxy_set_header X-Forwarded-Proto $scheme; + proxy_pass http://realestate-lab:8000/api/realestate/; + } + # travel thumbnails (generated by travel-proxy, stored in /data/thumbs) location ^~ /media/travel/.thumb/ { alias /data/thumbs/; diff --git a/scripts/deploy-nas.sh b/scripts/deploy-nas.sh index 2645adc..f6b11ed 100644 --- a/scripts/deploy-nas.sh +++ b/scripts/deploy-nas.sh @@ -32,7 +32,7 @@ cd "$SRC" # backend, travel-proxy, deployer, nginx, scripts, docker-compose.yml, .env 등 RSYNC_EXCLUDES="--exclude .git --exclude __pycache__ --exclude *.pyc --exclude data/" -for dir in backend travel-proxy deployer stock-lab music-lab blog-lab nginx scripts; do +for dir in backend travel-proxy deployer stock-lab music-lab blog-lab realestate-lab nginx scripts; do rsync -a --delete $RSYNC_EXCLUDES \ "$SRC/$dir/" "$DST/$dir/" done