docker-compose.yml 2.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495
  1. version: "3.8"
  2. name: yudao-system
  3. services:
  4. mysql:
  5. container_name: yudao-mysql
  6. image: mysql:8
  7. restart: unless-stopped
  8. tty: true
  9. ports:
  10. - 13306:3306
  11. environment:
  12. MYSQL_DATABASE: ${MYSQL_DATABASE:-ruoyi-vue-pro}
  13. MYSQL_ROOT_PASSWORD: ${MYSQL_ROOT_PASSWORD:-123456}
  14. volumes:
  15. - mysql:/var/lib/mysql/
  16. networks:
  17. - yudao-network
  18. redis:
  19. container_name: yudao-redis
  20. image: redis:6-alpine
  21. restart: unless-stopped
  22. ports:
  23. - 16379:6379
  24. volumes:
  25. - redis:/data
  26. networks:
  27. - yudao-network
  28. server:
  29. container_name: yudao-server
  30. build:
  31. context: ./yudao-server/
  32. image: yudao-server
  33. restart: unless-stopped
  34. ports:
  35. - 48080:48080
  36. environment:
  37. # https://github.com/polovyivan/docker-pass-configs-to-container
  38. SPRING_PROFILES_ACTIVE: local
  39. JAVA_OPTS:
  40. ${JAVA_OPTS:-
  41. -Xms512m
  42. -Xmx512m
  43. -Djava.security.egd=file:/dev/./urandom
  44. }
  45. ARGS:
  46. --spring.datasource.dynamic.datasource.master.url=${MASTER_DATASOURCE_URL:-jdbc:mysql://yudao-mysql:3306/ruoyi-vue-pro?useSSL=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true&nullCatalogMeansCurrent=true}
  47. --spring.datasource.dynamic.datasource.master.username=${MASTER_DATASOURCE_USERNAME:-root}
  48. --spring.datasource.dynamic.datasource.master.password=${MASTER_DATASOURCE_PASSWORD:-123456}
  49. --spring.datasource.dynamic.datasource.slave.url=${SLAVE_DATASOURCE_URL:-jdbc:mysql://yudao-mysql:3306/ruoyi-vue-pro?useSSL=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true&nullCatalogMeansCurrent=true}
  50. --spring.datasource.dynamic.datasource.slave.username=${SLAVE_DATASOURCE_USERNAME:-root}
  51. --spring.datasource.dynamic.datasource.slave.password=${SLAVE_DATASOURCE_PASSWORD:-123456}
  52. --spring.redis.host=${REDIS_HOST:-yudao-redis}
  53. networks:
  54. - yudao-network
  55. depends_on:
  56. - mysql
  57. - redis
  58. admin:
  59. container_name: yudao-admin
  60. build:
  61. context: ./yudao-ui-admin
  62. args:
  63. NODE_ENV:
  64. ENV=${NODE_ENV:-production}
  65. PUBLIC_PATH=${PUBLIC_PATH:-/}
  66. VUE_APP_TITLE=${VUE_APP_TITLE:-芋道管理系统}
  67. VUE_APP_BASE_API=${VUE_APP_BASE_API:-/prod-api}
  68. VUE_APP_APP_NAME=${VUE_APP_APP_NAME:-/}
  69. VUE_APP_TENANT_ENABLE=${VUE_APP_TENANT_ENABLE:-true}
  70. VUE_APP_CAPTCHA_ENABLE=${VUE_APP_CAPTCHA_ENABLE:-true}
  71. VUE_APP_DOC_ENABLE=${VUE_APP_DOC_ENABLE:-true}
  72. VUE_APP_BAIDU_CODE=${VUE_APP_BAIDU_CODE:-fadc1bd5db1a1d6f581df60a1807f8ab}
  73. image: yudao-admin
  74. restart: unless-stopped
  75. ports:
  76. - 8080:80
  77. networks:
  78. - yudao-network
  79. depends_on:
  80. - server
  81. networks:
  82. yudao-network:
  83. driver: bridge
  84. volumes:
  85. mysql:
  86. driver: local
  87. redis:
  88. driver: local