40 lines
1.3 KiB
YAML
40 lines
1.3 KiB
YAML
# 호스트 포트는 다른 스택과 겹치지 않게 4만 번대로 둔다. 충돌 시 아래 두 줄만 바꾼다.
|
|
# 웹(nginx 정적): 호스트 42881 -> 컨테이너 80
|
|
# PocketBase: 호스트 42917 -> 컨테이너 8090
|
|
#
|
|
# PocketBase 데이터는 호스트 ./pb_data 에 둔다(gitignore).
|
|
# 로그에 "unable to open database file (14)" 가 나오면 대부분 ./pb_data 권한 문제다.
|
|
# 해결: (1) 아래 user 줄을 비활성화한 채 한 번 기동해 pb_data 생성 후,
|
|
# (2) 호스트에서 `sudo chown -R 1000:10 pb_data` 후 user 줄을 다시 켠다.
|
|
# UGREEN에서 컨테이너를 1000:10으로 고정하려면 user 줄 주석을 해제한다.
|
|
services:
|
|
pocketbase:
|
|
image: ghcr.io/muchobien/pocketbase:latest
|
|
container_name: pocketbase-todo
|
|
restart: unless-stopped
|
|
# user: "1000:10"
|
|
ports:
|
|
- "42917:8090"
|
|
environment:
|
|
PB_HOST: 0.0.0.0
|
|
PB_PORT: 8090
|
|
volumes:
|
|
- ./pb_data:/pb_data
|
|
command:
|
|
- serve
|
|
- --http=0.0.0.0:8090
|
|
- --dir=/pb_data
|
|
|
|
todo-web:
|
|
build:
|
|
context: .
|
|
args:
|
|
VITE_POCKETBASE_URL: ${VITE_POCKETBASE_URL:-http://127.0.0.1:42917}
|
|
VITE_PUBLIC_APP_URL: ${VITE_PUBLIC_APP_URL:-}
|
|
container_name: todo-web
|
|
restart: unless-stopped
|
|
ports:
|
|
- "42881:80"
|
|
depends_on:
|
|
- pocketbase
|