123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123 |
- #!/bin/bash -e
- #tar xvzf redis-7.0.7.tar.gz
- #sudo docker build -t hfy_redis:v7.0.7 .
- # 获取脚本运行所在路径
- SCRIPT_DIR=$(cd $(dirname ${BASH_SOURCE[0]}); pwd)
- # 编译安装redis
- function installRedis(){
- echo "欢迎本 redis 安装程序"
- _useConfig=$1
- _installMode=$2
- w1=1
- cd $SCRIPT_DIR
- while [[ $w1 == 1 ]]
- do
- clear
- _Host="0.0.0.0"
- _Port=6543
- _User="hfyredis"
- _Passwd="hfyredis28181"
- _dbName="gb_db"
- if [ "$_useConfig" == "1" ]; then
- echo "使用配置文件进行安装"
- redisHost=$redis_host
- redisPort=$redis_port
- redisPasswd=$redis_passwd
- redisDB=$redis_db
- w1=2
- else
- echo "开始安装redis,请按照提示输入信息"
- if [ $_installMode == 2 ];then
- read -p "请输入连接地址($_Host): " redisHost
- fi
- redisHost=${redisHost:-$_Host}
- read -p "请输入redis外部端口($_Port): " redisPort
- redisPort=${redisPort:-$_Port}
- # read -p "请输入账户名($_User): " redisUser
- # redisUser=${redisUser:-$_User}
- read -p "请输入密码($_Passwd): " redisPasswd
- redisPasswd=${redisPasswd:-$_Passwd}
- read -p "请输入数据库($_dbName): " $redisDB
- redisDB=${redisDB:-$_dbName}
- # 修改参数
- w2=1
- while [[ $w2 == 1 ]]
- do
- echo "
- 国标平台Redis数据库信息
- 地址:$redisHost
- 端口:$redisPort
- 密码:$redisPasswd
- 数据库:$redisDB
- "
- echo "是否确认为此信息?y/n"
- read _yn
- if [[ $_yn == "y" ]] || [[ $_yn == "yes" ]] || [[ $_yn == "Y" ]] || [[ $_yn == "YES" ]] ; then
- echo "确认信息";
- w1=2;
- break;
- elif [[ $_yn == "n" ]] || [[ $_yn == "n" ]] || [[ $_yn == "N" ]] || [[ $_yn == "NO" ]] ; then
- echo "重新输入"
- w2=2;
- else
- echo "---------------------"
- fi
- done
- fi
- done
- echo "数据库信息确认完成"
- if [ $_installMode == 2 ];then
- echo "导出密码"
- return 0
- fi
- # 修改配置文件
- sed -i \
- -e "s/^port .*$/port $redisPort/g" \
- -e "s/^requirepass .*$/requirepass $redisPasswd/g" \
- $SCRIPT_DIR"/redis.conf";
- docker build -t hfyredis:latest .
- docker stop hfy_redis
- docker rm hfy_redis
- docker run -it -p "$redisPort":"$redisPort" -v /data/redis:/data/redis -v /data/redis/logs:/data/redis/logs --name hfy_redis -itd hfyredis:latest
- }
- clear
- echo -e "\033[33m
- ----------------------------------------------
- --------合方圆国标平台 Redis数据库安装程序---------
- ----------------------------------------------
- \033[0m";
- echo -e "\033[35m 是否通过本安装程序来安装Redis? \033[0m";
- PS3="请输入数字来选择安装方式:";
- selectOption_1="自动安装并配置 Redis";
- selectOption_2="已有 Redis 数据库,手动输入 Redis 相关信息";
- select=("$selectOption_1" "$selectOption_2")
- installMode=$1
- installMode=${installMode:-2}
- select fav in "${select[@]}";do
- case $fav in
- "$selectOption_1")
- echo "已选择 $fav"
- installRedis "$installMode" 1
- break;
- ;;
- "$selectOption_2")
- echo "已选择 $fav "
- installRedis "$installMode" 2
- break;
- ;;
- *)
- echo -e "\033[37m 请输入数字 1 或者 2 来选择 redis 的安装方式 \033[0m"
- ;;
- esac
- done
- echo "安装完成"
- cd ../
|