Skip to content

Instantly share code, notes, and snippets.

@william-abboud
Created April 5, 2025 08:54
Show Gist options
  • Select an option

  • Save william-abboud/bd2dca56ad8595aa1c25b26922d6cf68 to your computer and use it in GitHub Desktop.

Select an option

Save william-abboud/bd2dca56ad8595aa1c25b26922d6cf68 to your computer and use it in GitHub Desktop.
.NET 8 Microservices: DDD, CQRS, Vertical/Clean Architecture course on udemy docker compose override for MAC
version: '3.4'
services:
catalogdb:
container_name: catalogdb
environment:
- POSTGRES_USER=postgres
- POSTGRES_PASSWORD=postgres
- POSTGRES_DB=CatalogDb
restart: always
ports:
- "5432:5432"
volumes:
- postgres_catalog:/var/lib/postgresql/data/
basketdb:
container_name: basketdb
environment:
- POSTGRES_USER=postgres
- POSTGRES_PASSWORD=postgres
- POSTGRES_DB=BasketDb
restart: always
ports:
- "5433:5432"
volumes:
- postgres_basket:/var/lib/postgresql/data/
distributedcache:
container_name: distributedcache
restart: always
ports:
- "6379:6379"
orderdb:
container_name: orderdb
environment:
- ACCEPT_EULA=Y
- SA_PASSWORD=SwN12345678
restart: always
ports:
- "1433:1433"
messagebroker:
container_name: messagebroker
hostname: ecommerce-mq
environment:
- RABBITMQ_DEFAULT_USER=guest
- RABBITMQ_DEFAULT_PASS=guest
restart: always
ports:
- "5672:5672"
- "15672:15672"
catalog.api:
environment:
- ASPNETCORE_ENVIRONMENT=Development
- ASPNETCORE_HTTP_PORTS=8080
- ASPNETCORE_HTTPS_PORTS=8081
- ConnectionStrings__Database=Server=catalogdb;Port=5432;Database=CatalogDb;User Id=postgres;Password=postgres;Include Error Detail=true
- ASPNETCORE_Kestrel__Certificates__Default__Password=pass
- ASPNETCORE_Kestrel__Certificates__Default__Path=/https/aspnetapp.pfx
depends_on:
- catalogdb
ports:
- "6000:8080"
- "6060:8081"
volumes:
- ~/.microsoft/usersecrets:/home/app/.microsoft/usersecrets:ro
- ~/.aspnet/https:/https:ro
basket.api:
environment:
- ASPNETCORE_ENVIRONMENT=Development
- ASPNETCORE_HTTP_PORTS=8080
- ASPNETCORE_HTTPS_PORTS=8081
- ASPNETCORE_Kestrel__Certificates__Default__Password=pass
- ASPNETCORE_Kestrel__Certificates__Default__Path=/https/aspnetapp.pfx
- ConnectionStrings__Database=Server=basketdb;Port=5432;Database=BasketDb;User Id=postgres;Password=postgres;Include Error Detail=true
- ConnectionStrings__Redis=distributedcache:6379
- GrpcSettings__DiscountUrl=https://discount.grpc:8081
- MessageBroker__Host=amqp://ecommerce-mq:5672
- MessageBroker__UserName=guest
- MessageBroker__Password=guest
depends_on:
- basketdb
- distributedcache
- discount.grpc
- messagebroker
ports:
- "6001:8080"
- "6061:8081"
volumes:
- ~/.microsoft/usersecrets:/home/app/.microsoft/usersecrets:ro
- ~/.aspnet/https:/https:ro
discount.grpc:
environment:
- ASPNETCORE_ENVIRONMENT=Development
- ASPNETCORE_HTTP_PORTS=8080
- ASPNETCORE_HTTPS_PORTS=8081
- ASPNETCORE_Kestrel__Certificates__Default__Password=pass
- ASPNETCORE_Kestrel__Certificates__Default__Path=/https/aspnetapp.pfx
- ConnectionStrings__Database=Data Source=discountdb
ports:
- "6002:8080"
- "6062:8081"
volumes:
- ~/.microsoft/usersecrets:/home/app/.microsoft/usersecrets:ro
- ~/.aspnet/https:/https:ro
ordering.api:
environment:
- ASPNETCORE_ENVIRONMENT=Development
- ASPNETCORE_HTTP_PORTS=8080
- ASPNETCORE_HTTPS_PORTS=8081
- ASPNETCORE_Kestrel__Certificates__Default__Password=pass
- ASPNETCORE_Kestrel__Certificates__Default__Path=/https/aspnetapp.pfx
- ConnectionStrings__Database=Server=orderdb;Database=OrderDb;User Id=sa;Password=SwN12345678;Encrypt=False;TrustServerCertificate=True
- MessageBroker__Host=amqp://ecommerce-mq:5672
- MessageBroker__UserName=guest
- MessageBroker__Password=guest
- FeatureManagement__OrderFullfilment=false
depends_on:
- orderdb
- messagebroker
ports:
- "6003:8080"
- "6063:8081"
volumes:
- ~/.microsoft/usersecrets:/home/app/.microsoft/usersecrets:ro
- ~/.aspnet/https:/https:ro
yarpapigateway:
environment:
- ASPNETCORE_ENVIRONMENT=Development
- ASPNETCORE_HTTP_PORTS=8080
- ASPNETCORE_HTTPS_PORTS=8081
- ASPNETCORE_Kestrel__Certificates__Default__Password=pass
- ASPNETCORE_Kestrel__Certificates__Default__Path=/https/aspnetapp.pfx
depends_on:
- catalog.api
- basket.api
- ordering.api
ports:
- "6004:8080"
- "6064:8081"
volumes:
- ~/.microsoft/usersecrets:/home/app/.microsoft/usersecrets:ro
- ~/.aspnet/https:/https:ro
shopping.web:
environment:
- ASPNETCORE_ENVIRONMENT=Development
- ASPNETCORE_HTTP_PORTS=8080
- ASPNETCORE_HTTPS_PORTS=8081
- ASPNETCORE_Kestrel__Certificates__Default__Password=pass
- ASPNETCORE_Kestrel__Certificates__Default__Path=/https/aspnetapp.pfx
- ApiSettings__GatewayAddress=http://yarpapigateway:8080
depends_on:
- yarpapigateway
ports:
- "6005:8080"
- "6065:8081"
volumes:
- ~/.microsoft/usersecrets:/home/app/.microsoft/usersecrets:ro
- ~/.aspnet/https:/https:ro
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment