{ "$schema": "http://schema.management.azure.com/schemas/2014-04-01-preview/deploymentTemplate.json", "contentVersion": "1.0.0.0", "parameters": { "location": { "type": "string", "metadata": { "description": "Location of the resources." }, "defaultValue": "eastus" } }, "resources": [ { "apiVersion": "2018-07-01-preview", "name": "eShopNetwork", "type": "Microsoft.ServiceFabricMesh/networks", "location": "[parameters('location')]", "dependsOn": [], "properties": { "addressPrefix": "10.0.0.4/22", "ingressConfig": { "layer4": [ { "name": "catalogapiIngress", "publicPort": "5001", "applicationName": "eShopOnMesh", "serviceName": "catalogapi-svc", "endpointName": "catalogListener" }, { "name": "basketapiIngress", "publicPort": "5002", "applicationName": "eShopOnMesh", "serviceName": "basketapi-svc", "endpointName": "basketListener" }, { "name": "orderingapiIngress", "publicPort": "5004", "applicationName": "eShopOnMesh", "serviceName": "orderingapi-svc", "endpointName": "orderingListener" }, { "name": "marketingapiIngress", "publicPort": "5005", "applicationName": "eShopOnMesh", "serviceName": "marketingapi-svc", "endpointName": "marketingListener" }, { "name": "locationsapiIngress", "publicPort": "5007", "applicationName": "eShopOnMesh", "serviceName": "locationsapi-svc", "endpointName": "locationsListener" } ] } } }, { "apiVersion": "2018-07-01-preview", "name": "eShopOnMesh", "type": "Microsoft.ServiceFabricMesh/applications", "location": "[parameters('location')]", "dependsOn": [ "Microsoft.ServiceFabricMesh/networks/eShopNetwork" ], "properties": { "description": "eShopOnContainers on mesh", "services": [ { "type": "Microsoft.ServiceFabricMesh/services", "location": "[parameters('location')]", "name": "sqldata-svc", "properties": { "description": "SQL Server (sql-data svc)", "osType": "linux", "codePackages": [ { "name": "sqldata", "image": "microsoft/mssql-server-linux:latest", "endpoints": [ { "name": "sqldataListener", "port": "1433" } ], "environmentVariables": [ { "name": "ACCEPT_EULA", "value": "Y" }, { "name": "SA_PASSWORD", "value": "Pass@word" } ], "resources": { "requests": { "cpu": "1", "memoryInGB": "4" } } } ], "replicaCount": "1", "networkRefs": [ { "name": "[resourceId('Microsoft.ServiceFabricMesh/networks', 'eShopNetwork')]" } ] } }, { "type": "Microsoft.ServiceFabricMesh/services", "location": "[parameters('location')]", "name": "rabbitmq-svc", "properties": { "description": "rabbitmq", "osType": "linux", "codePackages": [ { "name": "rabbitmq", "image": "rabbitmq:3-management-alpine", "endpoints": [ { "name": "rabbitmqListener", "port": "5672" }, { "name": "rabbitManagementListener", "port": "15672" } ], "environmentVariables": [ { "name": "ACCEPT_EULA", "value": "Y" }, { "name": "SA_PASSWORD", "value": "Pass@word" } ], "resources": { "requests": { "cpu": "1", "memoryInGB": "1" } } } ], "replicaCount": "1", "networkRefs": [ { "name": "[resourceId('Microsoft.ServiceFabricMesh/networks', 'eShopNetwork')]" } ] } }, { "type": "Microsoft.ServiceFabricMesh/services", "location": "[parameters('location')]", "name": "mongo-svc", "properties": { "description": "mongo", "osType": "linux", "codePackages": [ { "name": "mongo", "image": "mongo:3.4.17", "endpoints": [ { "name": "mongoListener", "port": "27017" } ], "resources": { "requests": { "cpu": "1", "memoryInGB": "1" } } } ], "replicaCount": "1", "networkRefs": [ { "name": "[resourceId('Microsoft.ServiceFabricMesh/networks', 'eShopNetwork')]" } ] } }, { "type": "Microsoft.ServiceFabricMesh/services", "location": "[parameters('location')]", "name": "identityapi-svc", "properties": { "description": "Identity API Service.", "osType": "linux", "codePackages": [ { "name": "identity-api", "image": "eshop/identity.api:dev", "endpoints": [ { "name": "identityListener", "port": "80" } ], "environmentVariables": [ { "name": "ASPNETCORE_ENVIRONMENT", "value": "Development" }, { "name": "ASPNETCORE_URLS", "value": "http://0.0.0.0:80" }, { "name": "ConnectionString", "value": "Server=sqldata-svc;Database=Microsoft.eShopOnContainers.Services.IdentityDb;User Id=sa;Password=Pass@word" }, { "name": "SpaClient", "value": "http://0.0.0.0:5104" }, { "name": "XamarinCallback", "value": "http://0.0.0.0:5105/xamarincallback" }, { "name": "MvcClient", "value": "http://0.0.0.0:5100" }, { "name": "LocationApiClient", "value": "http://0.0.0.0:5109" }, { "name": "MarketingApiClient", "value": "http://0.0.0.0:5110" }, { "name": "BasketApiClient", "value": "http://0.0.0.0:5103" }, { "name": "OrderingApiClient", "value": "http://0.0.0.0:5102" }, { "name": "MobileShoppingAggClient", "value": "http://0.0.0.0:5120" }, { "name": "WebShoppingAggClient", "value": "http://0.0.0.0:5121" }, { "name": "UseCustomizationData", "value": "True" }, { "name": "OrchestratorType", "value": "SF" } ], "resources": { "requests": { "cpu": "0.5", "memoryInGB": "1" } } } ], "replicaCount": "1", "networkRefs": [ { "name": "[resourceId('Microsoft.ServiceFabricMesh/networks', 'eShopNetwork')]" } ] } }, { "type": "Microsoft.ServiceFabricMesh/services", "location": "[parameters('location')]", "name": "catalogapi-svc", "properties": { "description": "Catalog API Service.", "osType": "linux", "codePackages": [ { "name": "catalog-api", "image": "eshop/catalog.api:dev", "endpoints": [ { "name": "catalogListener", "port": "81" } ], "environmentVariables": [ { "name": "ASPNETCORE_ENVIRONMENT", "value": "Development" }, { "name": "ASPNETCORE_URLS", "value": "http://0.0.0.0:81" }, { "name": "ConnectionString", "value": "Server=sqldata-svc;Database=Microsoft.eShopOnContainers.Services.CatalogDb;User Id=sa;Password=Pass@word" }, { "name": "PicBaseUrl", "value": "http://0.0.0.0:5202/api/v1/c/catalog/items/[0]/pic/" }, { "name": "EventBusConnection", "value": "rabbitmq-svc" }, { "name": "AzureStorageEnabled", "value": "False" }, { "name": "AzureServiceBusEnabled", "value": "False" } ], "resources": { "requests": { "cpu": "0.5", "memoryInGB": "1" } } } ], "replicaCount": "1", "networkRefs": [ { "name": "[resourceId('Microsoft.ServiceFabricMesh/networks', 'eShopNetwork')]" } ] } }, { "type": "Microsoft.ServiceFabricMesh/services", "location": "[parameters('location')]", "name": "basketapi-svc", "properties": { "description": "Basket API Service.", "osType": "linux", "codePackages": [ { "name": "basket-api", "image": "eshop/basket.api:dev", "endpoints": [ { "name": "basketListener", "port": "82" } ], "environmentVariables": [ { "name": "ASPNETCORE_ENVIRONMENT", "value": "Development" }, { "name": "ASPNETCORE_URLS", "value": "http://0.0.0.0:82" }, { "name": "ConnectionString", "value": "Server=sqldata-svc;Database=Microsoft.eShopOnContainers.Services.BasketDb;User Id=sa;Password=Pass@word" }, { "name": "identityUrl", "value": "http://identity.api" }, { "name": "IdentityUrlExternal", "value": "http://10.121.122.162:5105" }, { "name": "EventBusConnection", "value": "rabbitmq-svc" }, { "name": "AzureStorageEnabled", "value": "False" }, { "name": "AzureServiceBusEnabled", "value": "False" } ], "resources": { "requests": { "cpu": "0.5", "memoryInGB": "1" } } } ], "replicaCount": "1", "networkRefs": [ { "name": "[resourceId('Microsoft.ServiceFabricMesh/networks', 'eShopNetwork')]" } ] } }, { "type": "Microsoft.ServiceFabricMesh/services", "location": "[parameters('location')]", "name": "orderingapi-svc", "properties": { "description": "Ordering API Service.", "osType": "linux", "codePackages": [ { "name": "ordering-api", "image": "eshop/ordering.api:dev", "endpoints": [ { "name": "orderingListener", "port": "83" } ], "environmentVariables": [ { "name": "ASPNETCORE_ENVIRONMENT", "value": "Development" }, { "name": "ASPNETCORE_URLS", "value": "http://0.0.0.0:83" }, { "name": "ConnectionString", "value": "Server=sqldata-svc;Database=Microsoft.eShopOnContainers.Services.OrderingDb;User Id=sa;Password=Pass@word" }, { "name": "identityUrl", "value": "http://identity.api" }, { "name": "IdentityUrlExternal", "value": "http://10.121.122.162:5105" }, { "name": "CheckUpdateTime", "value": "30000" }, { "name": "EventBusConnection", "value": "rabbitmq-svc" }, { "name": "AzureStorageEnabled", "value": "False" }, { "name": "AzureServiceBusEnabled", "value": "False" } ], "resources": { "requests": { "cpu": "0.5", "memoryInGB": "1" } } } ], "replicaCount": "1", "networkRefs": [ { "name": "[resourceId('Microsoft.ServiceFabricMesh/networks', 'eShopNetwork')]" } ] } }, { "type": "Microsoft.ServiceFabricMesh/services", "location": "[parameters('location')]", "name": "orderingbackgroundtasks-svc", "properties": { "description": "Ordering backgroundtasks API Service.", "osType": "linux", "codePackages": [ { "name": "ordering-backgroundtasks", "image": "eshop/ordering.backgroundtasks:dev", "endpoints": [ { "name": "orderingbackgroundtasksListener", "port": "84" } ], "environmentVariables": [ { "name": "ASPNETCORE_ENVIRONMENT", "value": "Development" }, { "name": "ASPNETCORE_URLS", "value": "http://0.0.0.0:84" }, { "name": "ConnectionString", "value": "Server=sqldata-svc;Database=Microsoft.eShopOnContainers.Services.OrderingDb;User Id=sa;Password=Pass@word" }, { "name": "CheckUpdateTime", "value": "30000" }, { "name": "GracePeriodTime", "value": "1" }, { "name": "EventBusConnection", "value": "rabbitmq-svc" }, { "name": "AzureStorageEnabled", "value": "False" }, { "name": "UseCustomizationData", "value": "True" }, { "name": "AzureServiceBusEnabled", "value": "False" }, { "name": "OrchestratorType", "value": "SF" } ], "resources": { "requests": { "cpu": "0.5", "memoryInGB": "1" } } } ], "replicaCount": "1", "networkRefs": [ { "name": "[resourceId('Microsoft.ServiceFabricMesh/networks', 'eShopNetwork')]" } ] } }, { "type": "Microsoft.ServiceFabricMesh/services", "location": "[parameters('location')]", "name": "marketingapi-svc", "properties": { "description": "Marketing API Service.", "osType": "linux", "codePackages": [ { "name": "marketing-api", "image": "eshop/marketing.api:dev", "endpoints": [ { "name": "marketingListener", "port": "85" } ], "environmentVariables": [ { "name": "ASPNETCORE_ENVIRONMENT", "value": "Development" }, { "name": "ASPNETCORE_URLS", "value": "http://0.0.0.0:85" }, { "name": "ConnectionString", "value": "Server=sqldata-svc;Database=Microsoft.eShopOnContainers.Services.MarketingDb;User Id=sa;Password=Pass@word" }, { "name": "MongoConnectionString", "value": "mongo-svc" }, { "name": "MongoDatabase", "value": "MarketingDb" }, { "name": "PicBaseUrl", "value": "http://0.0.0.0:5110/api/v1/campaigns/[0]/pic/" }, { "name": "identityUrl", "value": "http://identity.api" }, { "name": "IdentityUrlExternal", "value": "http://10.121.122.162:5105" }, { "name": "EventBusConnection", "value": "rabbitmq-svc" }, { "name": "AzureStorageEnabled", "value": "False" }, { "name": "UseCustomizationData", "value": "True" }, { "name": "AzureServiceBusEnabled", "value": "False" }, { "name": "OrchestratorType", "value": "SF" } ], "resources": { "requests": { "cpu": "0.5", "memoryInGB": "1" } } } ], "replicaCount": "1", "networkRefs": [ { "name": "[resourceId('Microsoft.ServiceFabricMesh/networks', 'eShopNetwork')]" } ] } }, { "type": "Microsoft.ServiceFabricMesh/services", "location": "[parameters('location')]", "name": "paymentapi-svc", "properties": { "description": "Payment API Service.", "osType": "linux", "codePackages": [ { "name": "payment-api", "image": "eshop/payment.api:dev", "endpoints": [ { "name": "paymentListener", "port": "86" } ], "environmentVariables": [ { "name": "ASPNETCORE_ENVIRONMENT", "value": "Development" }, { "name": "ASPNETCORE_URLS", "value": "http://0.0.0.0:86" }, { "name": "EventBusConnection", "value": "rabbitmq-svc" }, { "name": "AzureServiceBusEnabled", "value": "False" }, { "name": "OrchestratorType", "value": "SF" } ], "resources": { "requests": { "cpu": "0.5", "memoryInGB": "1" } } } ], "replicaCount": "1", "networkRefs": [ { "name": "[resourceId('Microsoft.ServiceFabricMesh/networks', 'eShopNetwork')]" } ] } }, { "type": "Microsoft.ServiceFabricMesh/services", "location": "[parameters('location')]", "name": "locationsapi-svc", "properties": { "description": "Locations API Service.", "osType": "linux", "codePackages": [ { "name": "locations-api", "image": "eshop/locations.api:dev", "endpoints": [ { "name": "locationsListener", "port": "87" } ], "environmentVariables": [ { "name": "ASPNETCORE_ENVIRONMENT", "value": "Development" }, { "name": "ASPNETCORE_URLS", "value": "http://0.0.0.0:87" }, { "name": "ConnectionString", "value": "mongo-svc" }, { "name": "Database", "value": "LocationsDb" }, { "name": "identityUrl", "value": "http://identity.api" }, { "name": "IdentityUrlExternal", "value": "http://10.121.122.162:5105" }, { "name": "EventBusConnection", "value": "rabbitmq-svc" }, { "name": "AzureServiceBusEnabled", "value": "False" }, { "name": "OrchestratorType", "value": "SF" } ], "resources": { "requests": { "cpu": "0.5", "memoryInGB": "1" } } } ], "replicaCount": "1", "networkRefs": [ { "name": "[resourceId('Microsoft.ServiceFabricMesh/networks', 'eShopNetwork')]" } ] } } ] } } ] }