0
0
mirror of https://github.com/alex289/CleanArchitecture.git synced 2025-07-12 00:25:05 +00:00
CleanArchitecture/docker-compose.yml
2024-10-03 19:32:42 +02:00

87 lines
2.1 KiB
YAML

services:
app:
container_name: ca_app
build:
context: .
dockerfile: Dockerfile
ports:
- 80:80
- 8080:8080
depends_on:
db:
condition: service_started
redis:
condition: service_started
rabbitmq:
condition: service_healthy
links:
- db
environment:
- ASPNETCORE_HTTP_PORTS=80
- Kestrel__Endpoints__Http__Url=http://+:80
- Kestrel__Endpoints__Grpc__Url=http://+:8080
- Kestrel__Endpoints__Grpc__Protocols=Http2
- ConnectionStrings__DefaultConnection=Server=db;Database=clean-architecture;Trusted_Connection=False;MultipleActiveResultSets=true;TrustServerCertificate=True;User Id=SA;Password=Password123!#
- OTEL_EXPORTER_OTLP_ENDPOINT=http://localhost:5341/ingest/otlp/v1/traces
- OTEL_EXPORTER_OTLP_PROTOCOL=http/protobuf
healthcheck:
test: ["CMD", "curl", "--fail", "http://localhost/healthz"]
interval: 30s
timeout: 5s
retries: 3
db:
container_name: ca_db
image: mcr.microsoft.com/mssql/server:2022-CU14-ubuntu-22.04
environment:
- ACCEPT_EULA=Y
- SA_PASSWORD=Password123!#
ports:
- 1433:1433
redis:
container_name: ca_redis
image: docker.io/bitnami/redis:7.2
environment:
# ALLOW_EMPTY_PASSWORD is recommended only for development.
- ALLOW_EMPTY_PASSWORD=yes
- REDIS_DISABLE_COMMANDS=FLUSHDB,FLUSHALL
ports:
- '6379:6379'
volumes:
- 'redis_data:/bitnami/redis/data'
rabbitmq:
container_name: ca_rabbitmq
image: "rabbitmq:3-management"
ports:
- 5672:5672
- 15672:15672
environment:
- RABBITMQ_DEFAULT_USER=admin
- RABBITMQ_DEFAULT_PASS=DOIA9234JF
volumes:
- rabbitmq_data:/var/lib/rabbitmq
healthcheck:
test: rabbitmq-diagnostics -q ping
interval: 10s
timeout: 3s
retries: 3
seq:
container_name: ca_seq
image: datalust/seq:latest
volumes:
- seq_data:/data
environment:
- ACCEPT_EULA=Y
ports:
- 5341:5341
- 8081:80
volumes:
seq_data:
rabbitmq_data:
redis_data:
driver: local