docker-compose.yml 2.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119
  1. version: '3'
  2. services:
  3. mysql:
  4. image: mysql:8.0.24
  5. container_name: mysql
  6. environment:
  7. # 时区上海
  8. TZ: Asia/Shanghai
  9. # root 密码
  10. MYSQL_ROOT_PASSWORD: root
  11. # 初始化数据库(后续的初始化sql会在这个库执行)
  12. MYSQL_DATABASE: ry-vue
  13. ports:
  14. - 3306:3306
  15. volumes:
  16. # 数据挂载
  17. - /docker/mysql/data/:/var/lib/mysql/
  18. # 配置挂载
  19. - /docker/mysql/conf/:/etc/mysql/conf.d/
  20. command:
  21. # 将mysql8.0默认密码策略 修改为 原先 策略 (mysql8.0对其默认策略做了更改 会导致密码无法匹配)
  22. --default-authentication-plugin=mysql_native_password
  23. --character-set-server=utf8mb4
  24. --collation-server=utf8mb4_general_ci
  25. --explicit_defaults_for_timestamp=true
  26. --lower_case_table_names=1
  27. privileged: true
  28. restart: always
  29. networks:
  30. ruoyi_net:
  31. ipv4_address: 172.30.0.36
  32. nginx-web:
  33. # 如果需要指定版本 就把 latest 换成版本号
  34. image: nginx:latest
  35. container_name: nginx-web
  36. ports:
  37. - 80:80
  38. - 443:443
  39. volumes:
  40. # 证书映射
  41. - /docker/nginx/cert:/etc/nginx/cert
  42. # 配置文件映射
  43. - /docker/nginx/conf/nginx.conf:/etc/nginx/nginx.conf
  44. # 页面目录
  45. - /docker/nginx/html:/usr/share/nginx/html
  46. # 日志目录
  47. - /docker/nginx/log:/var/log/nginx
  48. # 主机本机时间文件映射 与本机时间同步
  49. - /etc/localtime:/etc/localtime:ro
  50. privileged: true
  51. restart: always
  52. networks:
  53. - ruoyi_net
  54. redis:
  55. image: redis:6.2.1
  56. container_name: redis
  57. ports:
  58. - 6379:6379
  59. environment:
  60. # 设置环境变量 时区上海 编码UTF-8
  61. TZ: Asia/Shanghai
  62. LANG: en_US.UTF-8
  63. volumes:
  64. # 配置文件
  65. - /docker/redis/conf/redis.conf:/redis.conf:rw
  66. # 数据文件
  67. - /docker/redis/data:/data:rw
  68. command: "redis-server --appendonly yes"
  69. privileged: true
  70. restart: always
  71. networks:
  72. ruoyi_net:
  73. ipv4_address: 172.30.0.48
  74. ruoyi-server1:
  75. image: "ruoyi/ruoyi-server:2.4.0"
  76. environment:
  77. - TZ=Asia/Shanghai
  78. volumes:
  79. # 配置文件
  80. - /docker/server1/logs/:/ruoyi/server/logs/
  81. privileged: true
  82. restart: always
  83. networks:
  84. ruoyi_net:
  85. ipv4_address: 172.30.0.60
  86. ruoyi-server2:
  87. image: "ruoyi/ruoyi-server:2.4.0"
  88. environment:
  89. - TZ=Asia/Shanghai
  90. volumes:
  91. # 配置文件
  92. - /docker/server2/logs/:/ruoyi/server/logs/
  93. privileged: true
  94. restart: always
  95. networks:
  96. ruoyi_net:
  97. ipv4_address: 172.30.0.61
  98. ruoyi-monitor-admin:
  99. image: "ruoyi/ruoyi-monitor-admin:2.4.0"
  100. environment:
  101. - TZ=Asia/Shanghai
  102. privileged: true
  103. restart: always
  104. networks:
  105. ruoyi_net:
  106. ipv4_address: 172.30.0.90
  107. networks:
  108. ruoyi_net:
  109. driver: bridge
  110. ipam:
  111. config:
  112. - subnet: 172.30.0.0/16