Files
imprink/docker-compose.yml
2025-06-09 21:04:43 +03:00

102 lines
3.1 KiB
YAML

services:
webapi:
build:
context: .
dockerfile: ./src/Imprink.WebApi/Dockerfile
expose:
- "8080"
environment:
- ASPNETCORE_ENVIRONMENT=${ASPNETCORE_ENVIRONMENT}
- ConnectionStrings__DefaultConnection=Server=${SQL_SERVER};Database=${SQL_DATABASE};User Id=${SQL_USER_ID};Password=${SQL_PASSWORD};Encrypt=false;TrustServerCertificate=true;MultipleActiveResultSets=true;
- HTTP_PORTS=${ASPNETCORE_HTTP_PORTS}
- Auth0__Authority=${AUTH0_AUTHORITY}
- Auth0__Audience=${AUTH0_AUDIENCE}
- Serilog__SeqUrl=${ASPNETCORE_SEQ_URL}
- Serilog__MinimumLevel__Default=${ASPNETCORE_LOGGING_LEVEL_DEFAULT}
- Serilog__MinimumLevel__Override__Microsoft=${ASPNETCORE_LOGGING_LEVEL}
- Serilog__MinimumLevel__Override__Microsoft.AspNetCore=${ASPNETCORE_LOGGING_LEVEL}
- Serilog__MinimumLevel__Override__Microsoft.EntityFrameworkCore=${ASPNETCORE_LOGGING_LEVEL_EFCORE}
- Serilog__MinimumLevel__Override__Imprink=${ASPNETCORE_LOGGING_LEVEL_IMPRINK}
- Serilog__WriteTo__0__Name=Console
- Serilog__WriteTo__1__Name=Seq
- Serilog__WriteTo__1__Args__serverUrl=${ASPNETCORE_SEQ_URL}
- Serilog__Enrich__0=FromLogContext
- DatabaseOptions__ApplyMigrationsAtStartup=${ASPNETCORE_APPLY_MIGRATIONS_AT_STARTUP}
depends_on:
- mssql
networks:
- app-network
seq:
image: datalust/seq
expose:
- "80"
- "5341"
environment:
- ACCEPT_EULA=Y
- SEQ_CACHE_SYSTEMRAMTARGET=0.9
- BASE_URI=${SEQ_BASE_URI}
networks:
- app-network
webui:
image: node:18-alpine
working_dir: /app
volumes:
- ./webui:/app
- /app/node_modules
ports:
- "3000"
environment:
- NODE_ENV=${NODE_ENV}
- AUTH0_SECRET=${AUTH0_SECRET}
- APP_BASE_URL=${APP_BASE_URL}
- AUTH0_DOMAIN=${AUTH0_ISSUER_BASE_URL}
- AUTH0_CLIENT_ID=${AUTH0_CLIENT_ID}
- AUTH0_CLIENT_SECRET=${AUTH0_CLIENT_SECRET}
- AUTH0_AUDIENCE=${AUTH0_AUDIENCE}
- AUTH0_SCOPE=${AUTH0_SCOPE}
- COOKIE_DOMAIN=${COOKIE_DOMAIN}
- NEXT_PUBLIC_API_URL=${NEXT_PUBLIC_API_URL}
- NEXT_PUBLIC_AUTH0_CLIENT_ID=${NEXT_PUBLIC_AUTH0_CLIENT_ID}
- NEXT_PUBLIC_AUTH0_DOMAIN=${NEXT_PUBLIC_AUTH0_DOMAIN}
command: sh -c "npm install && npm run dev"
networks:
- app-network
mssql:
image: mcr.microsoft.com/mssql/server:2022-latest
container_name: sqlserver
tty: false
stdin_open: false
ports:
- "1433:1433"
environment:
- SA_PASSWORD=${SQL_PASSWORD}
- ACCEPT_EULA=Y
- MSSQL_AGENT_ENABLED=false
restart: unless-stopped
networks:
- app-network
logging:
driver: "none"
nginx:
image: nginx:latest
ports:
- "80:80"
- "443:443"
volumes:
- ./nginx/nginx.conf:/etc/nginx/nginx.conf:ro
- ./ssl/impr.ink-chain.pem:/etc/ssl/certs/impr.ink.crt:ro
- ./ssl/impr.ink-key.pem:/etc/ssl/private/impr.ink.key:ro
depends_on:
- webapi
- webui
- seq
networks:
- app-network
networks:
app-network:
driver: bridge