sunpengfei
2025-08-01 5b8a7043b39853e2a533273fc051fd1a11b8b02c
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
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: