deploy.sh 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126
  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=8091/tcp --permanent
  29. # 重启防火墙
  30. service firewalld restart
  31. }
  32. ##放置挂载文件
  33. mount(){
  34. #挂载 nginx 配置文件
  35. if test ! -f "/docker/nginx/conf/nginx.conf" ;then
  36. mkdir -p /docker/nginx/conf
  37. cp nginx/nginx.conf /docker/nginx/conf/nginx.conf
  38. fi
  39. #挂载 redis 配置文件
  40. if test ! -f "/docker/redis/conf/redis.conf" ;then
  41. mkdir -p /docker/redis/conf
  42. cp redis/redis.conf /docker/redis/conf/redis.conf
  43. fi
  44. #挂载 nacos 配置文件
  45. if test ! -f "/docker/nacos/conf/custom.properties" ;then
  46. mkdir -p /docker/nacos/conf
  47. cp nacos/custom.properties /docker/nacos/conf/custom.properties
  48. fi
  49. #挂载 seata 配置文件
  50. if test ! -f "/docker/seata/conf/registry.conf" ;then
  51. mkdir -p /docker/seata/conf
  52. cp seata/registry.conf /docker/seata/conf/registry.conf
  53. fi
  54. }
  55. #启动基础模块
  56. base(){
  57. docker-compose up -d mysql nacos seata-server nginx-web redis minio
  58. }
  59. #启动监控模块
  60. monitor(){
  61. docker-compose up -d ruoyi-monitor sentinel ruoyi-xxl-job-admin
  62. }
  63. #启动程序模块
  64. start(){
  65. docker-compose up -d ruoyi-gateway ruoyi-auth ruoyi-system ruoyi-resource
  66. }
  67. #停止程序模块
  68. stop(){
  69. docker-compose stop ruoyi-gateway ruoyi-auth ruoyi-system ruoyi-resource
  70. }
  71. #关闭所有模块
  72. stopall(){
  73. docker-compose stop
  74. }
  75. #删除所有模块
  76. rm(){
  77. docker-compose rm
  78. }
  79. #删除Tag为空的镜像
  80. rmiNoneTag(){
  81. docker images|grep none|awk '{print $3}'|xargs docker rmi -f
  82. }
  83. #根据输入参数,选择执行对应方法,不输入则执行使用说明
  84. case "$1" in
  85. "port")
  86. port
  87. ;;
  88. "mount")
  89. mount
  90. ;;
  91. "base")
  92. base
  93. ;;
  94. "monitor")
  95. monitor
  96. ;;
  97. "start")
  98. start
  99. ;;
  100. "stop")
  101. stop
  102. ;;
  103. "stopall")
  104. stopall
  105. ;;
  106. "rm")
  107. rm
  108. ;;
  109. "rmiNoneTag")
  110. rmiNoneTag
  111. ;;
  112. *)
  113. usage
  114. ;;
  115. esac