setup.sh 2.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495
  1. #!/bin/bash
  2. cd `dirname $0`;
  3. mkdir -p conf
  4. #安装依赖
  5. yum install -y dos2unix wget curl unzip ;
  6. dos2unix $(pwd)/.env
  7. source $(pwd)/.env
  8. #开启防火墙
  9. firewall-cmd --add-port=6379/tcp --permanent
  10. firewall-cmd --add-port=16379/tcp --permanent
  11. firewall-cmd --add-port=6380/tcp --permanent
  12. firewall-cmd --add-port=16380/tcp --permanent
  13. firewall-cmd --add-port=6381/tcp --permanent
  14. firewall-cmd --add-port=16381/tcp --permanent
  15. firewall-cmd --add-port=6382/tcp --permanent
  16. firewall-cmd --add-port=16382/tcp --permanent
  17. firewall-cmd --add-port=6383/tcp --permanent
  18. firewall-cmd --add-port=16383/tcp --permanent
  19. firewall-cmd --add-port=6384/tcp --permanent
  20. firewall-cmd --add-port=16384/tcp --permanent
  21. firewall-cmd --reload
  22. #更新 redis 配置文件
  23. function updateRedis(){
  24. #下载配置
  25. wget https://raw.githubusercontent.com/redis/redis/unstable/redis.conf -O $(pwd)/redis.conf
  26. #启用集群模式
  27. sed -i 's/# cluster-enabled/cluster-enabled/g' $(pwd)/redis.conf
  28. sed -i 's/# cluster-config-file/cluster-config-file/g' $(pwd)/redis.conf
  29. #超时时间
  30. sed -i 's/# cluster-node-timeout/cluster-node-timeout/g' $(pwd)/redis.conf
  31. #仅追加
  32. #sed -i 's/appendonly no/appendonly yes/g' $(pwd)/redis.conf
  33. #后台运行,docker里不能后台启动
  34. #sed -i 's/daemonize no/daemonize yes/g' $(pwd)/redis.conf
  35. #非保护模式
  36. sed -i 's/protected-mode yes/protected-mode no/g' $(pwd)/redis.conf
  37. sed -i 's/#pidfile/pidfile/g' $(pwd)/redis.conf
  38. sed -i "s/bind 127.0.0.1/bind 0.0.0.0/g" $(pwd)/redis.conf
  39. }
  40. #拷贝配置文件
  41. function copyRedisConf(){
  42. cat $(pwd)/redis.conf > $(pwd)/conf/redis-$1.conf
  43. #修改端口
  44. sed -i "s/port 6379/port $1/g" $(pwd)/conf/redis-$1.conf
  45. }
  46. #执行更新reids 配置文件, 不用每次都修改配置
  47. updateRedis
  48. copyRedisConf 6379
  49. copyRedisConf 6380
  50. copyRedisConf 6381
  51. copyRedisConf 6382
  52. copyRedisConf 6383
  53. copyRedisConf 6384
  54. rm -rf $(pwd)/redis.conf
  55. echo "input : "
  56. echo "docker-compose up -d"
  57. echo "docker exec -it redis1 bash /opt/cluster.sh"