run anywhere

pull/288/head
zhaijun 3 years ago
parent 1a61598322
commit e48ea6f056

@ -1,12 +1,18 @@
#!/usr/bin/env bash #!/usr/bin/env bash
dir_name=`dirname $0`
if [ "${dir_name:0:1}" = "/" ]; then
cur_dir="`dirname $0`"
else
cur_dir="`pwd`"/"`dirname $0`"
fi
source ./style_info.cfg source "$cur_dir/style_info.cfg"
source ./path_info.cfg source "$cur_dir/path_info.cfg"
source ./function.sh source "$cur_dir/function.sh"
bin_dir="../bin" bin_dir="$cur_dir/../bin"
logs_dir="../logs" logs_dir="$cur_dir/../logs"
sdk_db_dir="../db/sdk/" sdk_db_dir="$cur_dir/../db/sdk/"
#Automatically created when there is no bin, logs folder #Automatically created when there is no bin, logs folder
if [ ! -d $bin_dir ]; then if [ ! -d $bin_dir ]; then
mkdir -p $bin_dir mkdir -p $bin_dir
@ -19,7 +25,7 @@ if [ ! -d $sdk_db_dir ]; then
fi fi
#begin path #begin path
begin_path=$PWD begin_path=$cur_dir
build_pid_array=() build_pid_array=()

@ -3,6 +3,13 @@
#fixme The full name of the shell script that needs to be started is placed in the need_to_start_server_shell array #fixme The full name of the shell script that needs to be started is placed in the need_to_start_server_shell array
#fixme Put the shell script name here #fixme Put the shell script name here
dir_name=`dirname $0`
if [ "${dir_name:0:1}" = "/" ]; then
cur_dir="`dirname $0`"
else
cur_dir="`pwd`"/"`dirname $0`"
fi
need_to_start_server_shell=( need_to_start_server_shell=(
start_rpc_service.sh start_rpc_service.sh
msg_gateway_start.sh msg_gateway_start.sh
@ -12,19 +19,19 @@ need_to_start_server_shell=(
demo_svr_start.sh demo_svr_start.sh
) )
time=`date +"%Y-%m-%d %H:%M:%S"` time=`date +"%Y-%m-%d %H:%M:%S"`
echo "==========================================================">>../logs/openIM.log 2>&1 & echo "==========================================================">>$cur_dir/../logs/openIM.log 2>&1 &
echo "==========================================================">>../logs/openIM.log 2>&1 & echo "==========================================================">>$cur_dir/../logs/openIM.log 2>&1 &
echo "==========================================================">>../logs/openIM.log 2>&1 & echo "==========================================================">>$cur_dir/../logs/openIM.log 2>&1 &
echo "==========server start time:${time}===========">>../logs/openIM.log 2>&1 & echo "==========server start time:${time}===========">>$cur_dir/../logs/openIM.log 2>&1 &
echo "==========================================================">>../logs/openIM.log 2>&1 & echo "==========================================================">>$cur_dir/../logs/openIM.log 2>&1 &
echo "==========================================================">>../logs/openIM.log 2>&1 & echo "==========================================================">>$cur_dir/../logs/openIM.log 2>&1 &
echo "==========================================================">>../logs/openIM.log 2>&1 & echo "==========================================================">>$cur_dir/../logs/openIM.log 2>&1 &
build_pid_array=() build_pid_array=()
idx=0 idx=0
for i in ${need_to_start_server_shell[*]}; do for i in ${need_to_start_server_shell[*]}; do
chmod +x $i chmod +x $cur_dir/$i
./$i & $cur_dir/$i &
build_pid=$! build_pid=$!
echo "build_pid " $build_pid echo "build_pid " $build_pid
build_pid_array[idx]=$build_pid build_pid_array[idx]=$build_pid

@ -1,12 +1,17 @@
#!/usr/bin/env bash #!/usr/bin/env bash
dir_name=`dirname $0`
if [ "${dir_name:0:1}" = "/" ]; then
cur_dir="`dirname $0`"
else
cur_dir="`pwd`"/"`dirname $0`"
fi
source "$cur_dir/style_info.cfg"
source "$cur_dir/path_info.cfg"
source "$cur_dir/function.sh"
source ./style_info.cfg bin_dir="$cur_dir/../bin"
source ./path_info.cfg logs_dir="$cur_dir/../logs"
source ./function.sh sdk_db_dir="$cur_dir/../db/sdk/"
bin_dir="../bin"
logs_dir="../logs"
sdk_db_dir="../db/sdk/"
#Automatically created when there is no bin, logs folder #Automatically created when there is no bin, logs folder
if [ ! -d $bin_dir ]; then if [ ! -d $bin_dir ]; then
mkdir -p $bin_dir mkdir -p $bin_dir
@ -19,7 +24,7 @@ if [ ! -d $sdk_db_dir ]; then
fi fi
#begin path #begin path
begin_path=$PWD begin_path=$cur_dir
for ((i = 0; i < ${#service_source_root[*]}; i++)); do for ((i = 0; i < ${#service_source_root[*]}; i++)); do
cd $begin_path cd $begin_path

@ -1,8 +1,13 @@
#!/usr/bin/env bash #!/usr/bin/env bash
dir_name=`dirname $0`
source ./style_info.cfg if [ "${dir_name:0:1}" = "/" ]; then
source ./path_info.cfg cur_dir="`dirname $0`"
source ./function.sh else
cur_dir="`pwd`"/"`dirname $0`"
fi
source "$cur_dir/style_info.cfg"
source "$cur_dir/path_info.cfg"
source "$cur_dir/function.sh"
service_port_name=( service_port_name=(
openImWsPort openImWsPort
openImApiPort openImApiPort

@ -1,8 +1,15 @@
#!/usr/bin/env bash #!/usr/bin/env bash
#Include shell font styles and some basic information #Include shell font styles and some basic information
source ./style_info.cfg dir_name=`dirname $0`
source ./path_info.cfg if [ "${dir_name:0:1}" = "/" ]; then
source ./function.sh cur_dir="`dirname $0`"
else
cur_dir="`pwd`"/"`dirname $0`"
fi
source "$cur_dir/style_info.cfg"
source "$cur_dir/path_info.cfg"
source "$cur_dir/function.sh"
switch=$(cat $config_path | grep demoswitch |awk -F '[:]' '{print $NF}') switch=$(cat $config_path | grep demoswitch |awk -F '[:]' '{print $NF}')
if [ ${switch} != "true" ]; then if [ ${switch} != "true" ]; then
echo -e ${YELLOW_PREFIX}" demo service switch is false not start demo "${COLOR_SUFFIX} echo -e ${YELLOW_PREFIX}" demo service switch is false not start demo "${COLOR_SUFFIX}
@ -24,7 +31,7 @@ sleep 1
cd ${demo_server_binary_root} cd ${demo_server_binary_root}
for ((i = 0; i < ${#api_ports[@]}; i++)); do for ((i = 0; i < ${#api_ports[@]}; i++)); do
nohup ./${demo_server_name} -port ${api_ports[$i]} >>../logs/openIM.log 2>&1 & nohup ./${demo_server_name} -port ${api_ports[$i]} >>$cur_dir/../logs/openIM.log 2>&1 &
done done
sleep 3 sleep 3
@ -44,4 +51,4 @@ if [ $check -ge 1 ]; then
echo -e ${SKY_BLUE_PREFIX}"LISTENING_PORT: "${COLOR_SUFFIX}${YELLOW_PREFIX}${allPorts}${COLOR_SUFFIX} echo -e ${SKY_BLUE_PREFIX}"LISTENING_PORT: "${COLOR_SUFFIX}${YELLOW_PREFIX}${allPorts}${COLOR_SUFFIX}
else else
echo -e ${YELLOW_PREFIX}${demo_server_name}${COLOR_SUFFIX}${RED_PREFIX}"SERVICE START ERROR, PLEASE CHECK openIM.log"${COLOR_SUFFIX} echo -e ${YELLOW_PREFIX}${demo_server_name}${COLOR_SUFFIX}${RED_PREFIX}"SERVICE START ERROR, PLEASE CHECK openIM.log"${COLOR_SUFFIX}
fi fi

@ -1,8 +1,15 @@
#!/usr/bin/env bash #!/usr/bin/env bash
#Include shell font styles and some basic information #Include shell font styles and some basic information
source ./style_info.cfg dir_name=`dirname $0`
source ./path_info.cfg if [ "${dir_name:0:1}" = "/" ]; then
source ./function.sh cur_dir="`dirname $0`"
else
cur_dir="`pwd`"/"`dirname $0`"
fi
source "$cur_dir/style_info.cfg"
source "$cur_dir/path_info.cfg"
source "$cur_dir/function.sh"
ulimit -n 200000 ulimit -n 200000
list1=$(cat $config_path | grep openImMessageGatewayPort | awk -F '[:]' '{print $NF}') list1=$(cat $config_path | grep openImMessageGatewayPort | awk -F '[:]' '{print $NF}')
@ -31,7 +38,7 @@ fi
sleep 1 sleep 1
cd ${msg_gateway_binary_root} cd ${msg_gateway_binary_root}
for ((i = 0; i < ${#ws_ports[@]}; i++)); do for ((i = 0; i < ${#ws_ports[@]}; i++)); do
nohup ./${msg_gateway_name} -rpc_port ${rpc_ports[$i]} -ws_port ${ws_ports[$i]} -prometheus_port ${prome_ports[$i]} >>../logs/openIM.log 2>&1 & nohup ./${msg_gateway_name} -rpc_port ${rpc_ports[$i]} -ws_port ${ws_ports[$i]} -prometheus_port ${prome_ports[$i]} >>$cur_path/../logs/openIM.log 2>&1 &
done done
#Check launched service process #Check launched service process

@ -1,8 +1,15 @@
#!/usr/bin/env bash #!/usr/bin/env bash
#Include shell font styles and some basic information #Include shell font styles and some basic information
source ./style_info.cfg dir_name=`dirname $0`
source ./path_info.cfg if [ "${dir_name:0:1}" = "/" ]; then
source ./function.sh cur_dir="`dirname $0`"
else
cur_dir="`pwd`"/"`dirname $0`"
fi
source "$cur_dir/style_info.cfg"
source "$cur_dir/path_info.cfg"
source "$cur_dir/function.sh"
list1=$(cat $config_path | grep messageTransferPrometheusPort | awk -F '[:]' '{print $NF}') list1=$(cat $config_path | grep messageTransferPrometheusPort | awk -F '[:]' '{print $NF}')
list_to_string $list1 list_to_string $list1
@ -27,7 +34,7 @@ for ((i = 0; i < ${msg_transfer_service_num}; i++)); do
if [ $prome_port != "" ]; then if [ $prome_port != "" ]; then
cmd="$cmd -prometheus_port $prome_port" cmd="$cmd -prometheus_port $prome_port"
fi fi
$cmd >>../logs/openIM.log 2>&1 & $cmd >>$cur_dir/../logs/openIM.log 2>&1 &
done done
#Check launched service process #Check launched service process

@ -1,56 +1,63 @@
#Don't put the space between "=" #Don't put the space between "="
dir_name=`dirname $0`
if [ "${dir_name:0:1}" = "/" ]; then
cur_path="`dirname $0`"
else
cur_path="`pwd`"/"`dirname $0`"
fi
msg_gateway_name="open_im_msg_gateway" msg_gateway_name="open_im_msg_gateway"
msg_gateway_binary_root="../bin/" msg_gateway_binary_root="$cur_path/../bin/"
msg_gateway_source_root="../cmd/open_im_msg_gateway/" msg_gateway_source_root="$cur_path/../cmd/open_im_msg_gateway/"
msg_name="open_im_msg" msg_name="open_im_msg"
msg_binary_root="../bin/" msg_binary_root="$cur_path/../bin/"
msg_source_root="../cmd/rpc/open_im_msg/" msg_source_root="$cur_path/../cmd/rpc/open_im_msg/"
push_name="open_im_push" push_name="open_im_push"
push_binary_root="../bin/" push_binary_root="$cur_path/../bin/"
push_source_root="../cmd/open_im_push/" push_source_root="$cur_path/../cmd/open_im_push/"
msg_transfer_name="open_im_msg_transfer" msg_transfer_name="open_im_msg_transfer"
msg_transfer_binary_root="../bin/" msg_transfer_binary_root="$cur_path/../bin/"
msg_transfer_source_root="../cmd/open_im_msg_transfer/" msg_transfer_source_root="$cur_path/../cmd/open_im_msg_transfer/"
msg_transfer_service_num=4 msg_transfer_service_num=4
sdk_server_name="open_im_sdk_server" sdk_server_name="open_im_sdk_server"
sdk_server_binary_root="../bin/" sdk_server_binary_root="$cur_path/../bin/"
sdk_server_source_root="../cmd/Open-IM-SDK-Core/" sdk_server_source_root="../cmd/Open-IM-SDK-Core/"
demo_server_name="open_im_demo" demo_server_name="open_im_demo"
demo_server_binary_root="../bin/" demo_server_binary_root="$cur_path/../bin/"
demo_server_source_root="../cmd/open_im_demo/" demo_server_source_root="$cur_path/../cmd/open_im_demo/"
cron_task_name="open_im_cron_task" cron_task_name="open_im_cron_task"
cron_task_binary_root="../bin/" cron_task_binary_root="$cur_path/../bin/"
cron_task_source_root="../cmd/open_im_cron_task/" cron_task_source_root="$cur_path/../cmd/open_im_cron_task/"
#Global configuration file default dir #Global configuration file default dir
config_path="../config/config.yaml" config_path="$cur_path/../config/config.yaml"
#servicefile dir path #servicefile dir path
service_source_root=( service_source_root=(
#api service file #api service file
../cmd/open_im_api/ $cur_path/../cmd/open_im_api/
../cmd/open_im_cms_api/ $cur_path/../cmd/open_im_cms_api/
#rpc service file #rpc service file
../cmd/rpc/open_im_user/ $cur_path/../cmd/rpc/open_im_user/
../cmd/rpc/open_im_friend/ $cur_path/../cmd/rpc/open_im_friend/
../cmd/rpc/open_im_group/ $cur_path/../cmd/rpc/open_im_group/
../cmd/rpc/open_im_auth/ $cur_path/../cmd/rpc/open_im_auth/
../cmd/rpc/open_im_admin_cms/ $cur_path/../cmd/rpc/open_im_admin_cms/
../cmd/rpc/open_im_office/ $cur_path/../cmd/rpc/open_im_office/
../cmd/rpc/open_im_organization/ $cur_path/../cmd/rpc/open_im_organization/
../cmd/rpc/open_im_conversation/ $cur_path/../cmd/rpc/open_im_conversation/
../cmd/rpc/open_im_cache/ $cur_path/../cmd/rpc/open_im_cache/
../cmd/open_im_cron_task $cur_path/../cmd/open_im_cron_task
${msg_gateway_source_root} ${msg_gateway_source_root}
${msg_transfer_source_root} ${msg_transfer_source_root}
${msg_source_root} ${msg_source_root}

@ -1,8 +1,15 @@
#!/usr/bin/env bash #!/usr/bin/env bash
#Include shell font styles and some basic information #Include shell font styles and some basic information
source ./style_info.cfg dir_name=`dirname $0`
source ./path_info.cfg if [ "${dir_name:0:1}" = "/" ]; then
source ./function.sh cur_dir="`dirname $0`"
else
cur_dir="`pwd`"/"`dirname $0`"
fi
source "$cur_dir/style_info.cfg"
source "$cur_dir/path_info.cfg"
source "$cur_dir/function.sh"

@ -1,8 +1,15 @@
#!/usr/bin/env bash #!/usr/bin/env bash
#Include shell font styles and some basic information #Include shell font styles and some basic information
source ./style_info.cfg dir_name=`dirname $0`
source ./path_info.cfg if [ "${dir_name:0:1}" = "/" ]; then
source ./function.sh cur_dir="`dirname $0`"
else
cur_dir="`pwd`"/"`dirname $0`"
fi
source "$cur_dir/style_info.cfg"
source "$cur_dir/path_info.cfg"
source "$cur_dir/function.sh"
ulimit -n 200000 ulimit -n 200000
ws_address=$(cat $config_path | grep openImWsAddress | awk -F '[ ]' '{print $NF}') ws_address=$(cat $config_path | grep openImWsAddress | awk -F '[ ]' '{print $NF}')

@ -3,27 +3,34 @@
#fixme The full name of the shell script that needs to be started is placed in the need_to_start_server_shell array #fixme The full name of the shell script that needs to be started is placed in the need_to_start_server_shell array
#fixme Put the shell script name here #fixme Put the shell script name here
dir_name=`dirname $0`
if [ "${dir_name:0:1}" = "/" ]; then
cur_dir="`dirname $0`"
else
cur_dir="`pwd`"/"`dirname $0`"
fi
need_to_start_server_shell=( need_to_start_server_shell=(
start_rpc_service.sh $cur_dir/start_rpc_service.sh
push_start.sh $cur_dir/push_start.sh
msg_transfer_start.sh $cur_dir/msg_transfer_start.sh
sdk_svr_start.sh $cur_dir/sdk_svr_start.sh
msg_gateway_start.sh $cur_dir/msg_gateway_start.sh
demo_svr_start.sh $cur_dir/demo_svr_start.sh
# start_cron.sh # start_cron.sh
) )
time=`date +"%Y-%m-%d %H:%M:%S"` time=`date +"%Y-%m-%d %H:%M:%S"`
echo "==========================================================">>../logs/openIM.log 2>&1 & echo "==========================================================">>$cur_dir/../logs/openIM.log 2>&1 &
echo "==========================================================">>../logs/openIM.log 2>&1 & echo "==========================================================">>$cur_dir/../logs/openIM.log 2>&1 &
echo "==========================================================">>../logs/openIM.log 2>&1 & echo "==========================================================">>$cur_dir/../logs/openIM.log 2>&1 &
echo "==========server start time:${time}===========">>../logs/openIM.log 2>&1 & echo "==========server start time:${time}===========">>$cur_dir/../logs/openIM.log 2>&1 &
echo "==========================================================">>../logs/openIM.log 2>&1 & echo "==========================================================">>$cur_dir/../logs/openIM.log 2>&1 &
echo "==========================================================">>../logs/openIM.log 2>&1 & echo "==========================================================">>$cur_dir/../logs/openIM.log 2>&1 &
echo "==========================================================">>../logs/openIM.log 2>&1 & echo "==========================================================">>$cur_dir/../logs/openIM.log 2>&1 &
for i in ${need_to_start_server_shell[*]}; do for i in ${need_to_start_server_shell[*]}; do
chmod +x $i chmod +x $i
./$i $i
if [ $? -ne 0 ]; then if [ $? -ne 0 ]; then
exit -1 exit -1
fi fi

@ -1,8 +1,14 @@
#!/usr/bin/env bash #!/usr/bin/env bash
dir_name=`dirname $0`
if [ "${dir_name:0:1}" = "/" ]; then
cur_dir="`dirname $0`"
else
cur_dir="`pwd`"/"`dirname $0`"
fi
source ./style_info.cfg source "$cur_dir/style_info.cfg"
source ./path_info.cfg source "$cur_dir/path_info.cfg"
source ./function.sh source "$cur_dir/function.sh"
#service filename #service filename
service_filename=( service_filename=(
@ -70,7 +76,7 @@ for ((i = 0; i < ${#service_filename[*]}; i++)); do
kill -9 $(eval $pid) kill -9 $(eval $pid)
sleep 0.5 sleep 0.5
fi fi
cd ../bin cd "$cur_dir/../bin"
#Get the rpc port in the configuration file #Get the rpc port in the configuration file
portList=$(cat $config_path | grep ${service_port_name[$i]} | awk -F '[:]' '{print $NF}') portList=$(cat $config_path | grep ${service_port_name[$i]} | awk -F '[:]' '{print $NF}')
list_to_string ${portList} list_to_string ${portList}
@ -87,7 +93,7 @@ for ((i = 0; i < ${#service_filename[*]}; i++)); do
cmd="./${service_filename[$i]} -port ${service_ports[$j]}" cmd="./${service_filename[$i]} -port ${service_ports[$j]}"
fi fi
echo $cmd echo $cmd
nohup $cmd >>../logs/openIM.log 2>&1 & nohup $cmd >>$cur_dir/../logs/openIM.log 2>&1 &
sleep 1 sleep 1
pid="netstat -ntlp|grep $j |awk '{printf \$7}'|cut -d/ -f1" pid="netstat -ntlp|grep $j |awk '{printf \$7}'|cut -d/ -f1"
echo -e "${GREEN_PREFIX}${service_filename[$i]} start success,port number:${service_ports[$j]} pid:$(eval $pid)$COLOR_SUFFIX" echo -e "${GREEN_PREFIX}${service_filename[$i]} start success,port number:${service_ports[$j]} pid:$(eval $pid)$COLOR_SUFFIX"

@ -1,8 +1,14 @@
#!/usr/bin/env bash #!/usr/bin/env bash
#fixme This script is to stop the service #fixme This script is to stop the service
dir_name=`dirname $0`
if [ "${dir_name:0:1}" = "/" ]; then
cur_dir="`dirname $0`"
else
cur_dir="`pwd`"/"`dirname $0`"
fi
source ./style_info.cfg source "$cur_dir/style_info.cfg"
source ./path_info.cfg source "$cur_dir/path_info.cfg"
for i in ${service_names[*]}; do for i in ${service_names[*]}; do

Loading…
Cancel
Save