75 lines
1.7 KiB
YAML
75 lines
1.7 KiB
YAML
services:
|
|
db:
|
|
image: postgres:15-alpine
|
|
container_name: knot-db
|
|
restart: always
|
|
environment:
|
|
POSTGRES_USER: ${POSTGRES_USER}
|
|
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD}
|
|
POSTGRES_DB: ${POSTGRES_DB}
|
|
volumes:
|
|
- postgres_data:/var/lib/postgresql/data
|
|
ports:
|
|
- "5432:5432"
|
|
|
|
server:
|
|
build:
|
|
context: .
|
|
dockerfile: Dockerfile.server-net
|
|
container_name: knot-server
|
|
restart: always
|
|
environment:
|
|
DATABASE_URL: ${DATABASE_URL}
|
|
DOMAIN: ${DOMAIN}
|
|
JWT_SECRET: ${JWT_SECRET}
|
|
JWT_ISSUER: ${JWT_ISSUER}
|
|
JWT_AUDIENCE: ${JWT_AUDIENCE}
|
|
TURN_URL: ${TURN_URL}
|
|
TURN_USERNAME: ${TURN_USERNAME}
|
|
TURN_PASSWORD: ${TURN_PASSWORD}
|
|
S3_ENDPOINT: ${S3_ENDPOINT}
|
|
S3_ACCESS_KEY: ${S3_ACCESS_KEY}
|
|
S3_SECRET_KEY: ${S3_SECRET_KEY}
|
|
S3_BUCKET: ${S3_BUCKET}
|
|
KNOT_MASTER_ENCRYPTION_KEY: ${KNOT_MASTER_ENCRYPTION_KEY}
|
|
KNOT_ADMIN_USER: ${KNOT_ADMIN_USER}
|
|
KNOT_ADMIN_PASSWORD: ${KNOT_ADMIN_PASSWORD}
|
|
depends_on:
|
|
- db
|
|
- minio
|
|
ports:
|
|
- "5059:8080"
|
|
|
|
minio:
|
|
image: minio/minio
|
|
container_name: knot-minio
|
|
restart: always
|
|
environment:
|
|
MINIO_ROOT_USER: ${S3_ACCESS_KEY}
|
|
MINIO_ROOT_PASSWORD: ${S3_SECRET_KEY}
|
|
ports:
|
|
- "9000:9000"
|
|
- "9001:9001"
|
|
command: server /data --console-address ":9001"
|
|
volumes:
|
|
- minio_data:/data
|
|
|
|
web:
|
|
build:
|
|
context: .
|
|
dockerfile: Dockerfile.web
|
|
args:
|
|
- VITE_KLIPY_API_KEY=${VITE_KLIPY_API_KEY}
|
|
container_name: knot-web
|
|
restart: always
|
|
ports:
|
|
- "9090:80"
|
|
environment:
|
|
- VITE_KLIPY_API_KEY=${VITE_KLIPY_API_KEY}
|
|
depends_on:
|
|
- server
|
|
|
|
volumes:
|
|
postgres_data:
|
|
minio_data:
|