29 lines
1.1 KiB
YAML
29 lines
1.1 KiB
YAML
# 앞에 아파치가 선다 (playreel.o2o.kr → / 는 30100, /api 는 30101).
|
|
# 포트를 루프백에만 붙여 서버 IP로 직접 들어오는 길을 막는다.
|
|
services:
|
|
backend:
|
|
build: ./backend
|
|
ports:
|
|
- "127.0.0.1:30101:30101"
|
|
env_file:
|
|
- backend/.env
|
|
volumes:
|
|
# 소스를 그대로 물린다 — 호스트에서 고치고 exec으로 바로 돌린다. 산출물도 호스트에 남는다.
|
|
- ./backend:/app
|
|
- /app/.venv # 컨테이너 안에서 만든 것을 덮지 않는다
|
|
# Higgsfield CLI 토큰을 호스트에서 참조한다. 만료 시 갱신해야 해서 읽기 전용이 아니다.
|
|
- ${HOME}/.config/higgsfield:/root/.config/higgsfield
|
|
restart: unless-stopped
|
|
|
|
frontend:
|
|
build: ./frontend
|
|
ports:
|
|
- "127.0.0.1:30100:30100"
|
|
environment:
|
|
# 아파치가 /api 를 백엔드로 바로 보내므로 운영에서는 안 쓰인다.
|
|
# 아파치 없이 띄울 때 proxy.ts 가 이 값으로 넘긴다.
|
|
API_ORIGIN: http://backend:30101
|
|
depends_on:
|
|
- backend
|
|
restart: unless-stopped
|