deploy.sh 3.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159
  1. #!/bin/bash
  2. #使用说明,用来提示输入参数
  3. usage() {
  4. echo "Usage: sh 执行脚本.sh [port|mount|monitor|base|start|stop|stopall|rm|rmiNoneTag]"
  5. exit 1
  6. }
  7. #开启所需端口(生产环境不推荐开启)
  8. port(){
  9. # mysql 端口
  10. firewall-cmd --add-port=3306/tcp --permanent
  11. # redis 端口
  12. firewall-cmd --add-port=6379/tcp --permanent
  13. # minio api 端口
  14. firewall-cmd --add-port=9000/tcp --permanent
  15. # minio 控制台端口
  16. firewall-cmd --add-port=9001/tcp --permanent
  17. # 监控中心端口
  18. firewall-cmd --add-port=9100/tcp --permanent
  19. # 任务调度中心端口
  20. firewall-cmd --add-port=9900/tcp --permanent
  21. # nacos端口
  22. firewall-cmd --add-port=8848/tcp --permanent
  23. firewall-cmd --add-port=9848/tcp --permanent
  24. firewall-cmd --add-port=9849/tcp --permanent
  25. # sentinel端口
  26. firewall-cmd --add-port=8718/tcp --permanent
  27. # seata端口
  28. firewall-cmd --add-port=7091/tcp --permanent
  29. firewall-cmd --add-port=8091/tcp --permanent
  30. # elk端口
  31. firewall-cmd --add-port=9200/tcp --permanent
  32. firewall-cmd --add-port=5601/tcp --permanent
  33. firewall-cmd --add-port=4560/tcp --permanent
  34. # kafka端口
  35. firewall-cmd --add-port=2181/tcp --permanent
  36. firewall-cmd --add-port=9092/tcp --permanent
  37. firewall-cmd --add-port=19092/tcp --permanent
  38. # rabbitmq端口
  39. firewall-cmd --add-port=5672/tcp --permanent
  40. firewall-cmd --add-port=15672/tcp --permanent
  41. # rocketmq端口
  42. firewall-cmd --add-port=9876/tcp --permanent
  43. firewall-cmd --add-port=19876/tcp --permanent
  44. firewall-cmd --add-port=10911/tcp --permanent
  45. # 重启防火墙
  46. service firewalld restart
  47. }
  48. ##放置挂载文件
  49. mount(){
  50. #挂载 nginx 配置文件
  51. if test ! -f "/docker/nginx/" ;then
  52. mkdir -p /docker/nginx/
  53. cp -r nginx/* /docker/nginx
  54. fi
  55. #挂载 redis 配置文件
  56. if test ! -f "/docker/redis/" ;then
  57. mkdir -p /docker/redis/
  58. cp -r redis/* /docker/redis
  59. fi
  60. #挂载 nacos 配置文件
  61. if test ! -f "/docker/nacos/" ;then
  62. mkdir -p /docker/nacos/
  63. cp -r nacos/* /docker/nacos
  64. fi
  65. #挂载 elk 文件
  66. if test ! -f "/docker/elk/" ;then
  67. mkdir -p /docker/elk/
  68. cp -r elk/* /docker/elk
  69. fi
  70. #挂载 kafka 文件
  71. if test ! -f "/docker/kafka/" ;then
  72. mkdir -p /docker/kafka/
  73. cp -r kafka/* /docker/kafka
  74. fi
  75. #挂载 rabbitmq 文件
  76. if test ! -f "/docker/rabbitmq/" ;then
  77. mkdir -p /docker/rabbitmq/
  78. cp -r rabbitmq/data /docker/rabbitmq
  79. cp -r rabbitmq/log /docker/rabbitmq
  80. fi
  81. #挂载 rocketmq 文件
  82. if test ! -f "/docker/rocketmq/" ;then
  83. mkdir -p /docker/rocketmq/
  84. cp -r rocketmq/* /docker/rocketmq
  85. fi
  86. chmod -R 777 /docker
  87. }
  88. #启动基础模块
  89. base(){
  90. docker-compose up -d mysql nacos seata-server nginx-web redis minio
  91. }
  92. #启动监控模块
  93. monitor(){
  94. docker-compose up -d ruoyi-monitor sentinel ruoyi-xxl-job-admin
  95. }
  96. #启动程序模块
  97. start(){
  98. docker-compose up -d ruoyi-gateway ruoyi-auth ruoyi-system ruoyi-resource
  99. }
  100. #停止程序模块
  101. stop(){
  102. docker-compose stop ruoyi-gateway ruoyi-auth ruoyi-system ruoyi-resource
  103. }
  104. #关闭所有模块
  105. stopall(){
  106. docker-compose stop
  107. }
  108. #删除所有模块
  109. rm(){
  110. docker-compose rm
  111. }
  112. #删除Tag为空的镜像
  113. rmiNoneTag(){
  114. docker images|grep none|awk '{print $3}'|xargs docker rmi -f
  115. }
  116. #根据输入参数,选择执行对应方法,不输入则执行使用说明
  117. case "$1" in
  118. "port")
  119. port
  120. ;;
  121. "mount")
  122. mount
  123. ;;
  124. "base")
  125. base
  126. ;;
  127. "monitor")
  128. monitor
  129. ;;
  130. "start")
  131. start
  132. ;;
  133. "stop")
  134. stop
  135. ;;
  136. "stopall")
  137. stopall
  138. ;;
  139. "rm")
  140. rm
  141. ;;
  142. "rmiNoneTag")
  143. rmiNoneTag
  144. ;;
  145. *)
  146. usage
  147. ;;
  148. esac