docker-compose.yaml 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778
  1. version: "3"
  2. # 声明一个名为network的networks,subnet为network的子网地址,默认网关是177.7.0.1
  3. networks:
  4. network:
  5. ipam:
  6. driver: default
  7. config:
  8. - subnet: '177.7.0.0/16'
  9. # 设置mysql,redis持久化保存
  10. volumes:
  11. mysql:
  12. redis:
  13. services:
  14. web:
  15. build:
  16. context: ../../web
  17. dockerfile: ./Dockerfile
  18. container_name: gva-web
  19. restart: always
  20. ports:
  21. - '8080:8080'
  22. depends_on:
  23. - server
  24. command: [ 'nginx-debug', '-g', 'daemon off;' ]
  25. networks:
  26. network:
  27. ipv4_address: 177.7.0.11
  28. server:
  29. build:
  30. context: ../../server
  31. dockerfile: ./Dockerfile
  32. container_name: gva-server
  33. restart: always
  34. ports:
  35. - '8888:8888'
  36. depends_on:
  37. - mysql
  38. - redis
  39. links:
  40. - mysql
  41. - redis
  42. networks:
  43. network:
  44. ipv4_address: 177.7.0.12
  45. mysql:
  46. image: mysql:8.0.21 # 如果您是 arm64 架构:如 MacOS 的 M1,请修改镜像为 image: mysql/mysql-server:8.0.21
  47. container_name: gva-mysql
  48. command: mysqld --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci #设置utf8字符集
  49. restart: always
  50. ports:
  51. - "13306:3306" # host物理直接映射端口为13306
  52. environment:
  53. MYSQL_ROOT_PASSWORD: 'Aa@6447985' # root管理员用户密码
  54. MYSQL_DATABASE: 'gva' # 初始化启动时要创建的数据库的名称
  55. MYSQL_USER: 'gva'
  56. MYSQL_PASSWORD: 'Aa@6447985'
  57. volumes:
  58. - mysql:/var/lib/mysql
  59. networks:
  60. network:
  61. ipv4_address: 177.7.0.13
  62. redis:
  63. image: redis:6.0.6
  64. container_name: gva-redis # 容器名
  65. restart: always
  66. ports:
  67. - '16379:6379'
  68. volumes:
  69. - redis:/data
  70. networks:
  71. network:
  72. ipv4_address: 177.7.0.14