docker-compose.yml 5.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206
  1. version: '3.8'
  2. services:
  3. happy-cloud-mysql:
  4. build:
  5. context: ./doc/db
  6. environment:
  7. MYSQL_ROOT_PASSWORD: 123456
  8. restart: always
  9. container_name: happy-cloud-mysql
  10. image: happy-cloud-mysql
  11. command:
  12. --character-set-server=utf8mb4
  13. --collation-server=utf8mb4_general_ci
  14. --explicit_defaults_for_timestamp=true
  15. --lower_case_table_names=1
  16. --max_allowed_packet=128M
  17. --sql-mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
  18. ports:
  19. - 3309:3306
  20. hostname: happy-cloud-mysql
  21. happy-cloud-redis:
  22. image: redis:5.0
  23. #宿主机端口修改,避免冲突
  24. ports:
  25. - 18369:6379
  26. restart: always
  27. # Redis 的密码1:配置--requirepass;2:需要自己在与容器共享的配置redis.conf中加入,即更改配置中 requirepass yourpassword
  28. command: redis-server --requirepass 123456 --appendonly yes
  29. container_name: happy-cloud-redis
  30. hostname: happy-cloud-redis
  31. happy-cloud-nacos:
  32. restart: always
  33. image: nacos/nacos-server
  34. container_name: happy-cloud-nacos
  35. hostname: happy-cloud-nacos
  36. environment:
  37. - "PREFER_HOST_MODE=hostname"
  38. - "MODE=standalone"
  39. - "SPRING_DATASOURCE_PLATFORM=mysql"
  40. - "MYSQL_SERVICE_HOST=happy-cloud-mysql"
  41. - "MYSQL_SERVICE_DB_NAME=nacos_config"
  42. - "MYSQL_SERVICE_PORT=3306"
  43. - "MYSQL_SERVICE_USER=root"
  44. - "MYSQL_SERVICE_PASSWORD=123456"
  45. ports:
  46. - 8848:8848
  47. happy-cloud-gateway:
  48. build:
  49. context: ./happy-cloud-gateway
  50. restart: always
  51. ports:
  52. - 9999:9999
  53. container_name: happy-cloud-gateway
  54. hostname: happy-cloud-gateway
  55. image: happy-cloud-gateway
  56. happy-cloud-system:
  57. build:
  58. context: ./happy-cloud-system/happy-cloud-system-biz
  59. restart: always
  60. container_name: happy-cloud-system
  61. hostname: happy-cloud-system
  62. image: happy-cloud-system
  63. happy-cloud-wisdom:
  64. build:
  65. context: ./happy-cloud-wisdom/happy-cloud-wisdom-biz
  66. restart: always
  67. container_name: happy-cloud-wisdom
  68. hostname: happy-cloud-wisdom
  69. image: happy-cloud-wisdom
  70. #分布式定时任务
  71. happy-cloud-xxl-job:
  72. build:
  73. context: ./happy-cloud-xxl-job/happy-cloud-xxl-job-admin
  74. restart: always
  75. ports:
  76. - 9004:8004
  77. container_name: happy-cloud-xxl-job
  78. hostname: happy-cloud-xxl-job
  79. image: happy-cloud-xxl-job
  80. # happy-cloud-auth:
  81. # build:
  82. # context: ./happy-cloud-auth
  83. # restart: always
  84. # container_name: happy-cloud-auth
  85. # hostname: happy-cloud-auth
  86. # image: happy-cloud-auth
  87. #
  88. # happy-cloud-monitor:
  89. # build:
  90. # context: ./happy-cloud-monitor
  91. # restart: always
  92. # ports:
  93. # - 9111:9111
  94. # container_name: happy-cloud-monitor
  95. # hostname: happy-cloud-monitor
  96. # image: happy-cloud-monitor
  97. #sentinel限流
  98. happy-cloud-sentinel:
  99. build:
  100. context: ./happy-cloud-sentinel
  101. restart: always
  102. ports:
  103. - 8888:8888
  104. environment:
  105. - NACOS_SERVER_ADDR=happy-cloud-nacos:8848
  106. - NACOS_NAMESPACE=d1191f93-910a-47cc-8684-234e2b30909b
  107. - NACOS_GROUP_ID=DEFAULT_GROUP
  108. - JAVA_OPTS=-Dserver.port=8888 -Dcsp.sentinel.dashboard.server=happy-cloud-sentinel:8888 -Dproject.name=happy-cloud-sentinel
  109. container_name: happy-cloud-sentinel
  110. hostname: happy-cloud-sentinel
  111. image: happy-cloud-sentinel
  112. #elk日志系统
  113. elasticsearch:
  114. image: elasticsearch:6.4.0
  115. container_name: elasticsearch
  116. hostname: elasticsearch
  117. restart: always
  118. environment:
  119. - cluster.name=elasticsearch_cluster
  120. - xpack.security.enabled=false
  121. - "ES_JAVA_OPTS=-Xms512m -Xmx512m"
  122. - node.name=elasticsearch_node_1
  123. - "TZ=Asia/Shanghai"
  124. volumes:
  125. - ./doc/elasticsearch/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml
  126. ports:
  127. - 9200:9200
  128. - 9300:9300
  129. kibana:
  130. image: kibana:6.4.0
  131. container_name: kibana
  132. hostname: kibana
  133. restart: always
  134. depends_on:
  135. - elasticsearch
  136. environment:
  137. - "elasticsearch.hosts=http://elasticsearch:9200"
  138. - "TZ=Asia/Shanghai"
  139. ports:
  140. - 5601:5601
  141. #日志收集,logstash和fluentd二选一,内存占用相对于logstash而言,fluentd小很多。稳定性方面使用logstash
  142. # logstash:
  143. # image: logstash:6.4.0
  144. # container_name: logstash
  145. # hostname: logstash
  146. # command: logstash -f /usr/share/logstash/pipeline/logstash.conf #logstash 启动时使用的配置文件
  147. # volumes:
  148. # - ./doc/elasticsearch/logstash.conf:/usr/share/logstash/pipeline/logstash.conf #挂载logstash的配置文件
  149. # depends_on:
  150. # - elasticsearch
  151. # environment:
  152. # - "TZ=Asia/Shanghai"
  153. # ports:
  154. # - 4560:4560
  155. fluentd:
  156. image: fluent/fluentd:v1.10
  157. container_name: fluentd
  158. user: root
  159. environment:
  160. - TZ=Asia/Shanghai
  161. - FLUENTD_CONF=fluent.conf
  162. volumes:
  163. - ./doc/elasticsearch/fluent.conf:/fluentd/etc/fluent.conf
  164. depends_on:
  165. - elasticsearch
  166. ports:
  167. - 4560:4560
  168. # skywalking-oap:
  169. # image: apache/skywalking-oap-server:6.4.0
  170. # container_name: skywalking-oap
  171. # depends_on:
  172. # - elasticsearch
  173. # hostname: skywalking-oap
  174. # restart: always
  175. # ports:
  176. # - 11800:11800
  177. # - 12800:12800
  178. # environment:
  179. # - "TZ=Asia/Shanghai"
  180. # volumes:
  181. # - ./doc/skywalking/config:/apache-skywalking-apm-bin/config:ro
  182. #
  183. # skywalking-ui:
  184. # image: apache/skywalking-ui:6.4.0
  185. # container_name: skywalking-ui
  186. # depends_on:
  187. # - skywalking-oap
  188. # restart: always
  189. # ports:
  190. # - 8066:8080
  191. # environment:
  192. # - "collector.ribbon.listOfServers=skywalking-oap:12800"
  193. # - "TZ=Asia/Shanghai"