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: