58 lines
1.5 KiB
YAML
58 lines
1.5 KiB
YAML
services:
|
|
web:
|
|
image: ${REG:-acr.atyg.org}/library/custom-nas-web:latest
|
|
build:
|
|
context: .
|
|
dockerfile: Dockerfile
|
|
restart: unless-stopped
|
|
env_file: stack.env
|
|
labels:
|
|
- "traefik.enable=true"
|
|
- "traefik.docker.network=traefik-net"
|
|
- "traefik.http.routers.custom-nas.rule=Host(`${SYSTEM_DOMAIN:-nas.atyg.org}`)"
|
|
- "traefik.http.routers.custom-nas.entrypoints=websecure"
|
|
- "traefik.http.routers.custom-nas.tls=true"
|
|
- "traefik.http.services.custom-nas.loadbalancer.server.port=80"
|
|
expose:
|
|
- "80"
|
|
depends_on:
|
|
- db
|
|
networks:
|
|
- default
|
|
- traefik-net
|
|
volumes:
|
|
- ./viewer:/usr/share/nginx/html/viewer:ro
|
|
- ./data:/usr/share/nginx/html/data:ro
|
|
- ./mechanical:/usr/share/nginx/html/mechanical:ro
|
|
- ./bom:/usr/share/nginx/html/bom:ro
|
|
- spire-socket:/var/run/spire:ro
|
|
|
|
db:
|
|
image: ${REG:-acr.atyg.org}/library/postgres:18-alpine
|
|
restart: unless-stopped
|
|
environment:
|
|
- POSTGRES_USER=${POSTGRES_USER:-nasadmin}
|
|
- POSTGRES_PASSWORD=${POSTGRES_PASSWORD}
|
|
- POSTGRES_DB=${POSTGRES_DB:-custom_nas}
|
|
volumes:
|
|
- db-data:/var/lib/postgresql/data
|
|
networks:
|
|
- default
|
|
|
|
volumes:
|
|
db-data:
|
|
driver: local
|
|
driver_opts:
|
|
type: none
|
|
device: ${DB_DATA_PATH:-/var/data/custom-nas/db}
|
|
o: bind
|
|
spire-socket:
|
|
name: spire-socket
|
|
external: true
|
|
|
|
networks:
|
|
default:
|
|
name: custom-nas-net
|
|
traefik-net:
|
|
external: true
|