You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

350 lines
14 KiB

version: '3.7'
services:
lb:
image: nginx:1.21
ports:
- 80:80
- 443:443
volumes:
- ./nginx/certs/app-publicweb+2.pem:/etc/nginx/certs/app-cert.pem:ro
- ./nginx/certs/app-publicweb+2-key.pem:/etc/nginx/certs/app-key.pem:ro
- ./nginx/conf.d:/etc/nginx/conf.d:ro
networks:
- eshoponabp-network
administration-service:
image: eshoponabp/service-administration:latest
container_name: administration-service-container
build:
context: ../../
dockerfile: services/administration/src/EShopOnAbp.AdministrationService.HttpApi.Host/Dockerfile
environment:
- ASPNETCORE_ENVIRONMENT=Docker
- ASPNETCORE_URLS=http://+:80
# - Kestrel__Certificates__Default__Path=/root/certificate/eshop-dk.pfx
# - Kestrel__Certificates__Default__Password=8b6039b6-c67a-448b-977b-0ce6d3fcfd49
# - Redis__Configuration=redis
# - RabbitMQ__Connections__Default__HostName=rabbitmq
# - ConnectionStrings__AdministrationService=User ID=postgres;Password=myPassw0rd;Host=postgres-db;Port=5432;Database=EShopOnAbp_Administration;Pooling=false;
# ports:
# - "44353:443"
depends_on:
redis:
condition: service_healthy
postgres-db:
condition: service_healthy
rabbitmq:
condition: service_healthy
restart: on-failure
networks:
- eshoponabp-network
# volumes:
# - ./certs:/root/certificate
identity-service:
image: eshoponabp/service-identity:latest
container_name: identity-service-container
build:
context: ../../
dockerfile: services/identity/src/EShopOnAbp.IdentityService.HttpApi.Host/Dockerfile
environment:
- ASPNETCORE_ENVIRONMENT=Docker
- ASPNETCORE_URLS=http://+:80
# - Kestrel__Certificates__Default__Path=/root/certificate/eshop-dk.pfx
# - Kestrel__Certificates__Default__Password=8b6039b6-c67a-448b-977b-0ce6d3fcfd49
- Redis__Configuration=redis
- RabbitMQ__Connections__Default__HostName=rabbitmq
- ConnectionStrings__IdentityService=User ID=postgres;Password=myPassw0rd;Host=postgres-db;Port=5432;Database=EShopOnAbp_Identity;Pooling=false;
- ConnectionStrings__AdministrationService=User ID=postgres;Password=myPassw0rd;Host=postgres-db;Port=5432;Database=EShopOnAbp_Administration;Pooling=false;
# ports:
# - "44351:443"
depends_on:
redis:
condition: service_healthy
postgres-db:
condition: service_healthy
rabbitmq:
condition: service_healthy
restart: on-failure
networks:
- eshoponabp-network
# volumes:
# - ./certs:/root/certificate
catalog-service:
image: eshoponabp/service-catalog:latest
container_name: catalog-service-container
build:
context: ../../
dockerfile: services/catalog/src/EShopOnAbp.CatalogService.HttpApi.Host/Dockerfile
environment:
- ASPNETCORE_ENVIRONMENT=Docker
- ASPNETCORE_URLS=https://+:443;http://+:80;http://+:81;
# - Kestrel__Certificates__Default__Path=/root/certificate/eshop-dk.pfx
# - Kestrel__Certificates__Default__Password=8b6039b6-c67a-448b-977b-0ce6d3fcfd49
- Kestrel__EndPoints__Http__Url=http://docker.host.internal:80
- Kestrel__EndPoints__Https__Url=https://docker.host.internal:443
- Kestrel__EndPoints__gRPC__Url=http://docker.host.internal:81
# - Redis__Configuration=redis
# - RabbitMQ__Connections__Default__HostName=rabbitmq
# - ConnectionStrings__CatalogService=mongodb://mongodb/EShopOnAbp_Catalog
# - ConnectionStrings__AdministrationService=User ID=postgres;Password=myPassw0rd;Host=postgres-db;Port=5432;Database=EShopOnAbp_Administration;Pooling=false;
# ports:
# - "44354:443"
# - "5000:80"
# - "81:81"
depends_on:
redis:
condition: service_healthy
mongodb:
condition: service_healthy
rabbitmq:
condition: service_healthy
restart: on-failure
networks:
- eshoponabp-network
# volumes:
# - ./certs:/root/certificate
basket-service:
image: eshoponabp/service-basket:latest
container_name: basket-service-container
build:
context: ../../
dockerfile: services/basket/src/EShopOnAbp.BasketService.HttpApi.Host/Dockerfile
environment:
- ASPNETCORE_ENVIRONMENT=Docker
- ASPNETCORE_URLS=https://+:443;http://+:80;
# - Kestrel__Certificates__Default__Path=/root/certificate/eshop-dk.pfx
# - Kestrel__Certificates__Default__Password=8b6039b6-c67a-448b-977b-0ce6d3fcfd49
# - Redis__Configuration=redis
# - RabbitMQ__Connections__Default__HostName=rabbitmq
# - RemoteServices__Catalog__BaseUrl=https://catalog-service
# - RemoteServices__Catalog__GrpcUrl=http://catalog-service
# - ConnectionStrings__AdministrationService=User ID=postgres;Password=myPassw0rd;Host=postgres-db;Port=5432;Database=EShopOnAbp_Administration;Pooling=false;
# ports:
# - "44355:443"
depends_on:
redis:
condition: service_healthy
mongodb:
condition: service_healthy
rabbitmq:
condition: service_healthy
restart: on-failure
networks:
- eshoponabp-network
# volumes:
# - ./certs:/root/certificate
ordering-service:
image: eshoponabp/service-ordering:latest
container_name: ordering-service-container
build:
context: ../../
dockerfile: services/ordering/src/EShopOnAbp.OrderingService.HttpApi.Host/Dockerfile
environment:
- ASPNETCORE_ENVIRONMENT=Docker
- ASPNETCORE_URLS=https://+:443;http://+:80;
# - Kestrel__Certificates__Default__Path=/root/certificate/eshop-dk.pfx
# - Kestrel__Certificates__Default__Password=8b6039b6-c67a-448b-977b-0ce6d3fcfd49
- Redis__Configuration=redis
- RabbitMQ__Connections__Default__HostName=rabbitmq
- ConnectionStrings__OrderingService=User ID=postgres;Password=myPassw0rd;Host=postgres-db;Port=5432;Database=EShopOnAbp_Ordering;Pooling=false;
- ConnectionStrings__AdministrationService=User ID=postgres;Password=myPassw0rd;Host=postgres-db;Port=5432;Database=EShopOnAbp_Administration;Pooling=false;
# ports:
# - "44356:443"
depends_on:
redis:
condition: service_healthy
postgres-db:
condition: service_healthy
rabbitmq:
condition: service_healthy
restart: on-failure
networks:
- eshoponabp-network
# volumes:
# - ./certs:/root/certificate
payment-service:
image: eshoponabp/service-payment:latest
container_name: payment-service-container
build:
context: ../../
dockerfile: services/payment/src/EShopOnAbp.PaymentService.HttpApi.Host/Dockerfile
environment:
- ASPNETCORE_ENVIRONMENT=Docker
- ASPNETCORE_URLS=https://+:443;http://+:80;
# - Kestrel__Certificates__Default__Path=/root/certificate/eshop-dk.pfx
# - Kestrel__Certificates__Default__Password=8b6039b6-c67a-448b-977b-0ce6d3fcfd49
- Redis__Configuration=redis
- RabbitMQ__Connections__Default__HostName=rabbitmq
- ConnectionStrings__PaymentService=User ID=postgres;Password=myPassw0rd;Host=postgres-db;Port=5432;Database=EShopOnAbp_Payment;Pooling=false;
- ConnectionStrings__AdministrationService=User ID=postgres;Password=myPassw0rd;Host=postgres-db;Port=5432;Database=EShopOnAbp_Administration;Pooling=false;
- Payment__PayPal__ClientId=PAYPAL_CLIENT_ID
- Payment__PayPal__Secret=PAYPAL_SECRET
- Payment__PayPal__Environment=Sandbox
# ports:
# - "44357:443"
depends_on:
redis:
condition: service_healthy
postgres-db:
condition: service_healthy
rabbitmq:
condition: service_healthy
restart: on-failure
networks:
- eshoponabp-network
# volumes:
# - ./certs:/root/certificate
app-web:
image: eshoponabp/app-web:latest
container_name: app-web-container
build:
context: ../../
dockerfile: apps/angular/Dockerfile
environment:
- RabbitMQ__Connections__Default__HostName=rabbitmq
- RemoteServices__Default__BaseUrl=http://gateway-web-public
# ports:
# - "4200:80"
depends_on:
redis:
condition: service_healthy
rabbitmq:
condition: service_healthy
restart: on-failure
networks:
- eshoponabp-network
# volumes:
# - ./certs:/root/certificate
app-authserver:
image: eshoponabp/app-authserver:latest
container_name: app-authserver-container
build:
context: ../../
dockerfile: apps/auth-server/src/EShopOnAbp.AuthServer/Dockerfile
environment:
- ASPNETCORE_ENVIRONMENT=Docker
- ASPNETCORE_URLS=https://+:443;http://+:80;
- ASPNETCORE_HTTPS_PORT=44330
# - Kestrel__Certificates__Default__Path=/root/certificate/eshop-dk.pfx
# - Kestrel__Certificates__Default__Password=8b6039b6-c67a-448b-977b-0ce6d3fcfd49
# - Redis__Configuration=redis
# - RabbitMQ__Connections__Default__HostName=rabbitmq
# - App__SelfUrl=https://app-authserver
# - App__CorsOrigins=http://app-web,https://identity-service,https://administration-service,https://catalog-service,https://basket-service,https://ordering-service,https://payment-service
# - App__RedirectAllowedUrls=http://app-web
- AuthServer__Authority=https://app-authserver
- AuthServer__RequireHttpsMetadata=true
# - ConnectionStrings__IdentityService=User ID=postgres;Password=myPassw0rd;Host=postgres-db;Port=5432;Database=EShopOnAbp_Identity;Pooling=false;
# - ConnectionStrings__AdministrationService=User ID=postgres;Password=myPassw0rd;Host=postgres-db;Port=5432;Database=EShopOnAbp_Administration;Pooling=false;
# ports:
# - "44330:443"
depends_on:
redis:
condition: service_healthy
postgres-db:
condition: service_healthy
rabbitmq:
condition: service_healthy
restart: on-failure
networks:
- eshoponabp-network
# volumes:
# - ./certs:/root/certificate
app-publicweb:
image: eshoponabp/app-publicweb:latest
container_name: app-publicweb-container
build:
context: ../../
dockerfile: apps/public-web/src/EShopOnAbp.PublicWeb/Dockerfile
environment:
- ASPNETCORE_ENVIRONMENT=Docker
- ASPNETCORE_URLS=https://+:443;http://+:80;
# - Kestrel__Certificates__Default__Path=/root/certificate/eshop-dk.pfx
# - Kestrel__Certificates__Default__Password=8b6039b6-c67a-448b-977b-0ce6d3fcfd49
# - Redis__Configuration=redis
# - RabbitMQ__Connections__Default__HostName=rabbitmq
# - App__SelfUrl=https://app-publicweb
- AuthServer__Authority=https://app-authserver
- AuthServer__RequireHttpsMetadata=true
# - RemoteServices__Default__BaseUrl=http://gateway-web-public
# - ReverseProxy__Clusters__cluster1__Destinations__destination1__Address=http://gateway-web-public
# ports:
# - "44335:443"
depends_on:
redis:
condition: service_healthy
rabbitmq:
condition: service_healthy
restart: on-failure
networks:
- eshoponabp-network
# volumes:
# - ./certs:/root/certificate
gateway-web:
image: eshoponabp/gateway-web:latest
container_name: gateway-web-container
build:
context: ../../
dockerfile: gateways/web/src/EShopOnAbp.WebGateway/Dockerfile
environment:
- ASPNETCORE_ENVIRONMENT=Docker # Yarp can't resolve dns, needs to be overridden
- ASPNETCORE_URLS=https://+:443;http://+:80;
# - Kestrel__Certificates__Default__Path=/root/certificate/eshop-dk.pfx
# - Kestrel__Certificates__Default__Password=8b6039b6-c67a-448b-977b-0ce6d3fcfd49
- Redis__Configuration=redis
- ReverseProxy__Clusters__accountCluster__Destinations__destination1__Address=http://app-authserver
- ReverseProxy__Clusters__identityCluster__Destinations__destination1__Address=http://identity-service
- ReverseProxy__Clusters__administrationCluster__Destinations__destination1__Address=http://administration-service
- ReverseProxy__Clusters__catalogCluster__Destinations__destination1__Address=http://catalog-service
- ReverseProxy__Clusters__orderingCluster__Destinations__destination1__Address=http://ordering-service
- ReverseProxy__Clusters__feature-management-cluster__Destinations__destination1__Address=http://administration-service
- ReverseProxy__Clusters__permission-management-cluster__Destinations__destination1__Address=http://administration-service
- ReverseProxy__Clusters__setting-management-cluster__Destinations__destination1__Address=http://administration-service
# ports:
# - "44372:443"
depends_on:
redis:
condition: service_healthy
rabbitmq:
condition: service_healthy
restart: on-failure
networks:
- eshoponabp-network
# volumes:
# - ./certs:/root/certificate
gateway-web-public:
image: eshoponabp/gateway-web-public:latest
container_name: gateway-web-public-container
build:
context: ../../
dockerfile: gateways/web-public/src/EShopOnAbp.WebPublicGateway/Dockerfile
environment:
- ASPNETCORE_ENVIRONMENT=Docker # Yarp can't resolve dns, needs to be overridden
- ASPNETCORE_URLS=https://+:443;http://+:80;
# - Kestrel__Certificates__Default__Path=/root/certificate/eshop-dk.pfx
# - Kestrel__Certificates__Default__Password=8b6039b6-c67a-448b-977b-0ce6d3fcfd49
- Redis__Configuration=redis
- ReverseProxy__Clusters__accountCluster__Destinations__destination1__Address=http://app-authserver
- ReverseProxy__Clusters__administrationCluster__Destinations__destination1__Address=http://administration-service
- ReverseProxy__Clusters__catalogCluster__Destinations__destination1__Address=http://catalog-service
- ReverseProxy__Clusters__basketCluster__Destinations__destination1__Address=http://basket-service
- ReverseProxy__Clusters__orderingCluster__Destinations__destination1__Address=http://ordering-service
- ReverseProxy__Clusters__paymentCluster__Destinations__destination1__Address=http://payment-service
- ReverseProxy__Clusters__productPictureCluster__Destinations__destination1__Address=http://catalog-service
# ports:
# - "44373:443"
depends_on:
redis:
condition: service_healthy
rabbitmq:
condition: service_healthy
restart: on-failure
networks:
- eshoponabp-network
# volumes:
# - ./certs:/root/certificate
networks:
eshoponabp-network:
external: true