version: '3.8' services: # ·þÎñ1£ºAPIÍø¹Ø apigateway: build: context: ./FlexJobApi.Web.Entry dockerfile: Dockerfile # ʹÓõ÷ÊÔרÓÃDockerfile ports: - "5000:80" # Ó¦ÓÃ¶Ë¿Ú - "50001:50001" # µ÷ÊԶ˿ڣ¨.NET 9ĬÈÏÔ¶³Ìµ÷ÊԶ˿ڣ© environment: - ASPNETCORE_ENVIRONMENT=Development - Service1__Url=http://service1:8080 - Service2__Url=http://service2:8081 volumes: - ./ApiGateway:/app # ¹ÒÔØ´úÂëĿ¼£¨ÈÈÖØÔØ£© - ~/.nuget/packages:/root/.nuget/packages # ¹²ÏíNuGet»º´æ networks: - microservice-network depends_on: - service1 - service2 # ·þÎñ2£ºÒµÎñ·þÎñ1 service1: build: context: ./Service1 dockerfile: Dockerfile.debug ports: - "5001:80" - "50002:50001" # µ÷ÊÔ¶Ë¿Ú environment: - ASPNETCORE_ENVIRONMENT=Development - ConnectionStrings__Default=Server=db;Database=service1db;User=sa;Password=YourPassword volumes: - ./Service1:/app - ~/.nuget/packages:/root/.nuget/packages networks: - microservice-network depends_on: - db # ·þÎñ3£ºÒµÎñ·þÎñ2 service2: build: context: ./Service2 dockerfile: Dockerfile.debug ports: - "5002:80" - "50003:50001" # µ÷ÊÔ¶Ë¿Ú environment: - ASPNETCORE_ENVIRONMENT=Development volumes: - ./Service2:/app - ~/.nuget/packages:/root/.nuget/packages networks: - microservice-network # Êý¾Ý¿â·þÎñ db: image: mcr.microsoft.com/mssql/server:latest environment: - ACCEPT_EULA=Y - SA_PASSWORD=YourPassword ports: - "1433:1433" networks: - microservice-network volumes: - sql-data:/var/opt/mssql networks: microservice-network: driver: bridge volumes: sql-data: