|
|
- version: '3.4'
-
- # The default docker-compose.override file can use the "localhost" as the external name for testing web apps within the same dev machine.
- # The ESHOP_EXTERNAL_DNS_NAME_OR_IP environment variable is taken, by default, from the ".env" file defined like:
- # ESHOP_EXTERNAL_DNS_NAME_OR_IP=localhost
- # but values present in the environment vars at runtime will always override those defined inside the .env file
- # An external IP or DNS name has to be used (instead localhost and the 10.0.75.1 IP) when testing the Web apps and the Xamarin apps from remote machines/devices using the same WiFi, for instance.
-
- services:
- seq:
- environment:
- - ACCEPT_EULA=Y
- ports:
- - "5340:80"
-
- sqldata:
- environment:
- - SA_PASSWORD=Pass@word
- - ACCEPT_EULA=Y
- ports:
- - "5433:1433"
- volumes:
- - eshop-sqldata:/var/opt/mssql
-
- nosqldata:
- ports:
- - "27017:27017"
- volumes:
- - eshop-nosqldata:/data/db
-
- basketdata:
- ports:
- - "6379:6379"
- volumes:
- - eshop-basketdata:/data
- rabbitmq:
- ports:
- - "15672:15672"
- - "5672:5672"
-
- identity-api:
- environment:
- - ASPNETCORE_ENVIRONMENT=Development
- - ASPNETCORE_URLS=http://0.0.0.0:80
- - SpaClient=http://${ESHOP_EXTERNAL_DNS_NAME_OR_IP}:5104
- - XamarinCallback=http://${ESHOP_PROD_EXTERNAL_DNS_NAME_OR_IP}:5105/xamarincallback
- - ConnectionString=${ESHOP_AZURE_IDENTITY_DB:-Server=sqldata;Database=Microsoft.eShopOnContainers.Service.IdentityDb;User Id=sa;Password=Pass@word}
- - MvcClient=http://${ESHOP_EXTERNAL_DNS_NAME_OR_IP}:5100
- - LocationApiClient=http://${ESHOP_EXTERNAL_DNS_NAME_OR_IP}:5109
- - MarketingApiClient=http://${ESHOP_EXTERNAL_DNS_NAME_OR_IP}:5110
- - BasketApiClient=http://${ESHOP_EXTERNAL_DNS_NAME_OR_IP}:5103
- - OrderingApiClient=http://${ESHOP_EXTERNAL_DNS_NAME_OR_IP}:5102
- - MobileShoppingAggClient=http://${ESHOP_EXTERNAL_DNS_NAME_OR_IP}:5120
- - WebShoppingAggClient=http://${ESHOP_EXTERNAL_DNS_NAME_OR_IP}:5121
- - WebhooksApiClient=http://${ESHOP_EXTERNAL_DNS_NAME_OR_IP}:5113
- - WebhooksWebClient=http://${ESHOP_EXTERNAL_DNS_NAME_OR_IP}:5114
- - UseCustomizationData=True
- - ApplicationInsights__InstrumentationKey=${INSTRUMENTATION_KEY}
- - OrchestratorType=${ORCHESTRATOR_TYPE}
- ports:
- - "5105:80"
-
- basket-api:
- environment:
- - ASPNETCORE_ENVIRONMENT=Development
- - ASPNETCORE_URLS=http://0.0.0.0:80
- - ConnectionString=${ESHOP_AZURE_REDIS_BASKET_DB:-basketdata}
- - identityUrl=http://identity-api
- - IdentityUrlExternal=http://${ESHOP_EXTERNAL_DNS_NAME_OR_IP}:5105
- - EventBusConnection=${ESHOP_AZURE_SERVICE_BUS:-rabbitmq}
- - EventBusUserName=${ESHOP_SERVICE_BUS_USERNAME}
- - EventBusPassword=${ESHOP_SERVICE_BUS_PASSWORD}
- - AzureServiceBusEnabled=False
- - ApplicationInsights__InstrumentationKey=${INSTRUMENTATION_KEY}
- - OrchestratorType=${ORCHESTRATOR_TYPE}
- - UseLoadTest=${USE_LOADTEST:-False}
- - PATH_BASE=/basket-api
- - GRPC_PORT=81
- - PORT=80
- ports:
- - "5103:80"
- - "9103:81"
-
- catalog-api:
- environment:
- - ASPNETCORE_ENVIRONMENT=Development
- - ConnectionString=${ESHOP_AZURE_CATALOG_DB:-Server=sqldata;Database=Microsoft.eShopOnContainers.Services.CatalogDb;User Id=sa;Password=Pass@word}
- - PicBaseUrl=${ESHOP_AZURE_STORAGE_CATALOG_URL:-http://localhost:5202/c/api/v1/catalog/items/[0]/pic/} #Local: You need to open your local dev-machine firewall at range 5100-5110.
- - EventBusConnection=${ESHOP_AZURE_SERVICE_BUS:-rabbitmq}
- - EventBusUserName=${ESHOP_SERVICE_BUS_USERNAME}
- - EventBusPassword=${ESHOP_SERVICE_BUS_PASSWORD}
- - AzureStorageAccountName=${ESHOP_AZURE_STORAGE_CATALOG_NAME}
- - AzureStorageAccountKey=${ESHOP_AZURE_STORAGE_CATALOG_KEY}
- - UseCustomizationData=True
- - AzureServiceBusEnabled=False
- - AzureStorageEnabled=False
- - ApplicationInsights__InstrumentationKey=${INSTRUMENTATION_KEY}
- - OrchestratorType=${ORCHESTRATOR_TYPE}
- - GRPC_PORT=81
- - PORT=80
- - PATH_BASE=/catalog-api
- ports:
- - "5101:80"
- - "9101:81"
-
- ordering-api:
- environment:
- - ASPNETCORE_ENVIRONMENT=Development
- - ASPNETCORE_URLS=http://0.0.0.0:80
- - ConnectionString=${ESHOP_AZURE_ORDERING_DB:-Server=sqldata;Database=Microsoft.eShopOnContainers.Services.OrderingDb;User Id=sa;Password=Pass@word}
- - identityUrl=http://identity-api
- - IdentityUrlExternal=http://${ESHOP_EXTERNAL_DNS_NAME_OR_IP}:5105
- - EventBusConnection=${ESHOP_AZURE_SERVICE_BUS:-rabbitmq}
- - EventBusUserName=${ESHOP_SERVICE_BUS_USERNAME}
- - EventBusPassword=${ESHOP_SERVICE_BUS_PASSWORD}
- - UseCustomizationData=True
- - AzureServiceBusEnabled=False
- - CheckUpdateTime=30000
- - ApplicationInsights__InstrumentationKey=${INSTRUMENTATION_KEY}
- - OrchestratorType=${ORCHESTRATOR_TYPE}
- - UseLoadTest=${USE_LOADTEST:-False}
- - Serilog__MinimumLevel__Override__Microsoft.eShopOnContainers.BuildingBlocks.EventBusRabbitMQ=Verbose
- - Serilog__MinimumLevel__Override__ordering-api=Verbose
- - PATH_BASE=/ordering-api
- - GRPC_PORT=81
- - PORT=80
- ports:
- - "5102:80"
- - "9102:81"
-
- ordering-backgroundtasks:
- environment:
- - ASPNETCORE_ENVIRONMENT=Development
- - ASPNETCORE_URLS=http://0.0.0.0:80
- - ConnectionString=${ESHOP_AZURE_ORDERING_DB:-Server=sqldata;Database=Microsoft.eShopOnContainers.Services.OrderingDb;User Id=sa;Password=Pass@word}
- - EventBusConnection=${ESHOP_AZURE_SERVICE_BUS:-rabbitmq}
- - EventBusUserName=${ESHOP_SERVICE_BUS_USERNAME}
- - EventBusPassword=${ESHOP_SERVICE_BUS_PASSWORD}
- - UseCustomizationData=True
- - AzureServiceBusEnabled=False
- - CheckUpdateTime=30000
- - GracePeriodTime=1
- - ApplicationInsights__InstrumentationKey=${INSTRUMENTATION_KEY}
- - OrchestratorType=${ORCHESTRATOR_TYPE}
- - UseLoadTest=${USE_LOADTEST:-False}
- - Serilog__MinimumLevel__Override__Microsoft.eShopOnContainers.BuildingBlocks.EventBusRabbitMQ=Verbose
- ports:
- - "5111:80"
-
- marketing-api:
- environment:
- - ASPNETCORE_ENVIRONMENT=Development
- - ASPNETCORE_URLS=http://0.0.0.0:80
- - ConnectionString=${ESHOP_AZURE_MARKETING_DB:-Server=sqldata;Database=Microsoft.eShopOnContainers.Services.MarketingDb;User Id=sa;Password=Pass@word}
- - MongoConnectionString=${ESHOP_AZURE_COSMOSDB:-mongodb://nosqldata}
- - MongoDatabase=MarketingDb
- - EventBusConnection=${ESHOP_AZURE_SERVICE_BUS:-rabbitmq}
- - EventBusUserName=${ESHOP_SERVICE_BUS_USERNAME}
- - EventBusPassword=${ESHOP_SERVICE_BUS_PASSWORD}
- - identityUrl=http://identity-api
- - IdentityUrlExternal=http://${ESHOP_EXTERNAL_DNS_NAME_OR_IP}:5105
- - CampaignDetailFunctionUri=${ESHOP_AZUREFUNC_CAMPAIGN_DETAILS_URI}
- - PicBaseUrl=${ESHOP_AZURE_STORAGE_MARKETING_URL:-http://localhost:5110/api/v1/campaigns/[0]/pic/}
- - AzureStorageAccountName=${ESHOP_AZURE_STORAGE_MARKETING_NAME}
- - AzureStorageAccountKey=${ESHOP_AZURE_STORAGE_MARKETING_KEY}
- - AzureServiceBusEnabled=False
- - AzureStorageEnabled=False
- - ApplicationInsights__InstrumentationKey=${INSTRUMENTATION_KEY}
- - OrchestratorType=${ORCHESTRATOR_TYPE}
- - UseLoadTest=${USE_LOADTEST:-False}
- - PATH_BASE=/marketing-api
- ports:
- - "5110:80"
-
- payment-api:
- environment:
- - ASPNETCORE_ENVIRONMENT=Development
- - ASPNETCORE_URLS=http://0.0.0.0:80
- - EventBusConnection=${ESHOP_AZURE_SERVICE_BUS:-rabbitmq}
- - EventBusUserName=${ESHOP_SERVICE_BUS_USERNAME}
- - EventBusPassword=${ESHOP_SERVICE_BUS_PASSWORD}
- - AzureServiceBusEnabled=False
- - ApplicationInsights__InstrumentationKey=${INSTRUMENTATION_KEY}
- - OrchestratorType=${ORCHESTRATOR_TYPE}
- - Serilog__MinimumLevel__Override__payment-api.IntegrationEvents.EventHandling=Verbose
- - Serilog__MinimumLevel__Override__Microsoft.eShopOnContainers.BuildingBlocks.EventBusRabbitMQ=Verbose
- ports:
- - "5108:80"
-
- locations-api:
- environment:
- - ASPNETCORE_ENVIRONMENT=Development
- - ASPNETCORE_URLS=http://0.0.0.0:80
- - ConnectionString=${ESHOP_AZURE_COSMOSDB:-mongodb://nosqldata}
- - Database=LocationsDb
- - identityUrl=http://identity-api
- - IdentityUrlExternal=http://${ESHOP_EXTERNAL_DNS_NAME_OR_IP}:5105
- - EventBusConnection=${ESHOP_AZURE_SERVICE_BUS:-rabbitmq}
- - EventBusUserName=${ESHOP_SERVICE_BUS_USERNAME}
- - EventBusPassword=${ESHOP_SERVICE_BUS_PASSWORD}
- - AzureServiceBusEnabled=False
- - ApplicationInsights__InstrumentationKey=${INSTRUMENTATION_KEY}
- - OrchestratorType=${ORCHESTRATOR_TYPE}
- - UseLoadTest=${USE_LOADTEST:-False}
- - PATH_BASE=/locations-api
- ports:
- - "5109:80"
-
- webhooks-api:
- environment:
- - ASPNETCORE_ENVIRONMENT=Development
- - ASPNETCORE_URLS=http://0.0.0.0:80
- - ConnectionString=${ESHOP_AZURE_WEBHOOKS_DB:-Server=sqldata;Database=Microsoft.eShopOnContainers.Services.WebhooksDb;User Id=sa;Password=Pass@word}
- - EventBusConnection=${ESHOP_AZURE_SERVICE_BUS:-rabbitmq}
- - EventBusUserName=${ESHOP_SERVICE_BUS_USERNAME}
- - EventBusPassword=${ESHOP_SERVICE_BUS_PASSWORD}
- - IdentityUrl=http://identity-api
- - IdentityUrlExternal=http://${ESHOP_EXTERNAL_DNS_NAME_OR_IP}:5105
- ports:
- - "5113:80"
-
- mobileshoppingapigw:
- volumes:
- - ./ApiGateways/Envoy/config/mobilemarketing:/etc/envoy
- ports:
- - "5200:80"
- - "15200:8001"
-
- mobilemarketingapigw:
- volumes:
- - ./ApiGateways/Envoy/config/mobileshopping:/etc/envoy
- ports:
- - "5201:80"
- - "15201:8001"
-
- webshoppingapigw:
- volumes:
- - ./ApiGateways/Envoy/config/webshopping:/etc/envoy
- ports:
- - "5202:80"
- - "15202:8001"
-
- webmarketingapigw:
- volumes:
- - ./ApiGateways/Envoy/config/webmarketing:/etc/envoy
- ports:
- - "5203:80"
- - "15203:8001"
-
- mobileshoppingagg:
- environment:
- - ASPNETCORE_ENVIRONMENT=Development
- - urls__basket=http://basket-api
- - urls__catalog=http://catalog-api
- - urls__orders=http://ordering-api
- - urls__identity=http://identity-api
- - urls__grpcBasket=http://basket-api:81
- - urls__grpcCatalog=http://catalog-api:81
- - urls__grpcOrdering=http://ordering-api:81
- - CatalogUrlHC=http://catalog-api/hc
- - OrderingUrlHC=http://ordering-api/hc
- - IdentityUrlHC=http://identity-api/hc
- - BasketUrlHC=http://basket-api/hc
- - MarketingUrlHC=http://marketing-api/hc
- - PaymentUrlHC=http://payment-api/hc
- - LocationUrlHC=http://locations-api/hc
- - IdentityUrlExternal=http://10.0.75.1:5105
- ports:
- - "5120:80"
-
- webshoppingagg:
- environment:
- - ASPNETCORE_ENVIRONMENT=Development
- - urls__basket=http://basket-api
- - urls__catalog=http://catalog-api
- - urls__orders=http://ordering-api
- - urls__identity=http://identity-api
- - urls__grpcBasket=http://basket-api:81
- - urls__grpcCatalog=http://catalog-api:81
- - urls__grpcOrdering=http://ordering-api:81
- - CatalogUrlHC=http://catalog-api/hc
- - OrderingUrlHC=http://ordering-api/hc
- - IdentityUrlHC=http://identity-api/hc
- - BasketUrlHC=http://basket-api/hc
- - MarketingUrlHC=http://marketing-api/hc
- - PaymentUrlHC=http://payment-api/hc
- - LocationUrlHC=http://locations-api/hc
- - IdentityUrlExternal=http://${ESHOP_EXTERNAL_DNS_NAME_OR_IP}:5105
- ports:
- - "5121:80"
-
- ordering-signalrhub:
- environment:
- - ASPNETCORE_ENVIRONMENT=Development
- - ASPNETCORE_URLS=http://0.0.0.0:80
- - EventBusConnection=${ESHOP_AZURE_SERVICE_BUS:-rabbitmq}
- - EventBusUserName=${ESHOP_SERVICE_BUS_USERNAME}
- - EventBusPassword=${ESHOP_SERVICE_BUS_PASSWORD}
- - AzureServiceBusEnabled=False
- - ApplicationInsights__InstrumentationKey=${INSTRUMENTATION_KEY}
- - OrchestratorType=${ORCHESTRATOR_TYPE}
- - identityUrl=http://identity-api
- ports:
- - "5112:80"
-
- webstatus:
- environment:
- - ASPNETCORE_ENVIRONMENT=Development
- - ASPNETCORE_URLS=http://0.0.0.0:80
- - HealthChecksUI__HealthChecks__0__Name=WebMVC HTTP Check
- - HealthChecksUI__HealthChecks__0__Uri=http://webmvc/hc
- - HealthChecksUI__HealthChecks__1__Name=WebSPA HTTP Check
- - HealthChecksUI__HealthChecks__1__Uri=http://webspa/hc
- - HealthChecksUI__HealthChecks__2__Name=Web Shopping Aggregator GW HTTP Check
- - HealthChecksUI__HealthChecks__2__Uri=http://webshoppingagg/hc
- - HealthChecksUI__HealthChecks__3__Name=Mobile Shopping Aggregator HTTP Check
- - HealthChecksUI__HealthChecks__3__Uri=http://mobileshoppingagg/hc
- - HealthChecksUI__HealthChecks__4__Name=Ordering HTTP Check
- - HealthChecksUI__HealthChecks__4__Uri=http://ordering-api/hc
- - HealthChecksUI__HealthChecks__5__Name=Basket HTTP Check
- - HealthChecksUI__HealthChecks__5__Uri=http://basket-api/hc
- - HealthChecksUI__HealthChecks__6__Name=Catalog HTTP Check
- - HealthChecksUI__HealthChecks__6__Uri=http://catalog-api/hc
- - HealthChecksUI__HealthChecks__7__Name=Identity HTTP Check
- - HealthChecksUI__HealthChecks__7__Uri=http://identity-api/hc
- - HealthChecksUI__HealthChecks__8__Name=Marketing HTTP Check
- - HealthChecksUI__HealthChecks__8__Uri=http://marketing-api/hc
- - HealthChecksUI__HealthChecks__9__Name=Locations HTTP Check
- - HealthChecksUI__HealthChecks__9__Uri=http://locations-api/hc
- - HealthChecksUI__HealthChecks__10__Name=Payments HTTP Check
- - HealthChecksUI__HealthChecks__10__Uri=http://payment-api/hc
- - HealthChecksUI__HealthChecks__11__Name=Ordering SignalRHub HTTP Check
- - HealthChecksUI__HealthChecks__11__Uri=http://ordering-signalrhub/hc
- - HealthChecksUI__HealthChecks__12__Name=Ordering HTTP Background Check
- - HealthChecksUI__HealthChecks__12__Uri=http://ordering-backgroundtasks/hc
- - ApplicationInsights__InstrumentationKey=${INSTRUMENTATION_KEY}
- - OrchestratorType=${ORCHESTRATOR_TYPE}
- ports:
- - "5107:80"
-
- webspa:
- environment:
- - ASPNETCORE_ENVIRONMENT=Development
- - ASPNETCORE_URLS=http://0.0.0.0:80
- - IdentityUrl=http://${ESHOP_EXTERNAL_DNS_NAME_OR_IP}:5105
- - PurchaseUrl=http://${ESHOP_EXTERNAL_DNS_NAME_OR_IP}:5202
- - MarketingUrl=http://${ESHOP_EXTERNAL_DNS_NAME_OR_IP}:5203
- - IdentityUrlHC=http://identity-api/hc
- - UseCustomizationData=True
- - ApplicationInsights__InstrumentationKey=${INSTRUMENTATION_KEY}
- - OrchestratorType=${ORCHESTRATOR_TYPE}
- - SignalrHubUrl=http://${ESHOP_EXTERNAL_DNS_NAME_OR_IP}:5202
- ports:
- - "5104:80"
-
- webmvc:
- environment:
- - ASPNETCORE_ENVIRONMENT=Development
- - ASPNETCORE_URLS=http://0.0.0.0:80
- - PurchaseUrl=http://webshoppingapigw
- - IdentityUrl=http://10.0.75.1:5105
- - MarketingUrl=http://webmarketingapigw
- - SignalrHubUrl=http://${ESHOP_EXTERNAL_DNS_NAME_OR_IP}:5202
- - IdentityUrlHC=http://identity-api/hc
- - UseCustomizationData=True
- - ApplicationInsights__InstrumentationKey=${INSTRUMENTATION_KEY}
- - OrchestratorType=${ORCHESTRATOR_TYPE}
- - UseLoadTest=${USE_LOADTEST:-False}
- ports:
- - "5100:80"
-
- webhooks-client:
- environment:
- - ASPNETCORE_URLS=http://0.0.0.0:80
- - Token=6168DB8D-DC58-4094-AF24-483278923590 # Webhooks are registered with this token (any value is valid) but the client won't check it
- - IdentityUrl=http://10.0.75.1:5105
- - CallBackUrl=http://localhost:5114
- - WebhooksUrl=http://webhooks-api
- - SelfUrl=http://webhooks-client/
- ports:
- - "5114:80"
- volumes:
- eshop-sqldata:
- external: false
- eshop-nosqldata:
- external: false
- eshop-basketdata:
- external: false
-
|