deploy.sh 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596
  1. #!/bin/bash
  2. #使用说明,用来提示输入参数
  3. usage() {
  4. echo "Usage: sh 执行脚本.sh [port|mount|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. service firewalld restart
  19. }
  20. ##放置挂载文件
  21. mount(){
  22. #挂载 nginx 配置文件
  23. if test ! -f "/docker/nginx/conf/nginx.conf" ;then
  24. mkdir -p /docker/nginx/conf
  25. cp nginx/nginx.conf /docker/nginx/conf/nginx.conf
  26. fi
  27. #挂载 redis 配置文件
  28. if test ! -f "/docker/redis/conf/redis.conf" ;then
  29. mkdir -p /docker/redis/conf
  30. cp redis/redis.conf /docker/redis/conf/redis.conf
  31. fi
  32. }
  33. #启动基础模块
  34. base(){
  35. docker-compose up -d mysql nginx-web redis minio
  36. }
  37. #启动程序模块
  38. start(){
  39. docker-compose up -d ruoyi-server1 ruoyi-server2
  40. }
  41. #停止程序模块
  42. stop(){
  43. docker-compose stop ruoyi-server1 ruoyi-server2
  44. }
  45. #关闭所有模块
  46. stopall(){
  47. docker-compose stop
  48. }
  49. #删除所有模块
  50. rm(){
  51. docker-compose rm
  52. }
  53. #删除Tag为空的镜像
  54. rmiNoneTag(){
  55. docker images|grep none|awk '{print $3}'|xargs docker rmi -f
  56. }
  57. #根据输入参数,选择执行对应方法,不输入则执行使用说明
  58. case "$1" in
  59. "port")
  60. port
  61. ;;
  62. "mount")
  63. mount
  64. ;;
  65. "base")
  66. base
  67. ;;
  68. "start")
  69. start
  70. ;;
  71. "stop")
  72. stop
  73. ;;
  74. "stopall")
  75. stopall
  76. ;;
  77. "rm")
  78. rm
  79. ;;
  80. "rmiNoneTag")
  81. rmiNoneTag
  82. ;;
  83. *)
  84. usage
  85. ;;
  86. esac