diff --git a/docker/docker-entrypoint.sh b/docker/docker-entrypoint.sh index 66ba153b..10fc670e 100755 --- a/docker/docker-entrypoint.sh +++ b/docker/docker-entrypoint.sh @@ -9,24 +9,25 @@ fix_config cp -fv $dir_root/docker/front.conf /etc/nginx/conf.d/front.conf echo -echo -e "======================2. 启动nginx========================\n" +echo -e "======================2. 更新源代码========================\n" +ql update "no-restart" +echo + +echo -e "======================3. 启动nginx========================\n" nginx -s reload 2>/dev/null || nginx -c /etc/nginx/nginx.conf echo -e "nginx启动成功...\n" -echo -e "======================3. 启动控制面板========================\n" - -app_pid=$(ps -ef | grep "app.js" | grep -v grep) -if [ "$app_pid" != "" ]; then +echo -e "======================4. 启动控制面板========================\n" +if [[ $(pm2 info panel 2>/dev/null) ]]; then pm2 reload panel else pm2 start $dir_root/build/app.js -n panel fi echo -e "控制面板启动成功...\n" -echo -e "======================4. 启动定时任务========================\n" - -schedule_pid=$(ps -ef | grep "schedule.js" | grep -v grep) -if [ "$schedule_pid" != "" ]; then +echo -e "======================5. 启动定时任务========================\n" +cd $dir_root +if [[ $(pm2 info schedule 2>/dev/null) ]]; then pm2 reload schedule else pm2 start $dir_root/build/schedule.js -n schedule @@ -34,7 +35,7 @@ fi echo -e "定时任务启动成功...\n" if [[ $AutoStartBot == true ]]; then - echo -e "======================5. 启动bot========================\n" + echo -e "======================6. 启动bot========================\n" ql bot fi diff --git a/shell/update.sh b/shell/update.sh index 99cbd160..a8f16a2f 100755 --- a/shell/update.sh +++ b/shell/update.sh @@ -251,6 +251,7 @@ usage() { ## 更新qinglong update_qinglong() { + local no_restart="$1" echo -e "--------------------------------------------------------------\n" [ -f $dir_root/package.json ] && ql_depend_old=$(cat $dir_root/package.json) reset_romote_url ${dir_root} "${github_proxy_url}https://github.com/whyour/qinglong.git" @@ -287,10 +288,12 @@ update_qinglong() { cd $dir_root rm -rf $dir_root/build && rm -rf $dir_root/dist cp -rf $ql_static_repo/* $dir_root - echo -e "重启面板中..." - nginx -s reload 2>/dev/null || nginx -c /etc/nginx/nginx.conf - sleep 1 - reload_pm2 + if [[ $no_restart != "no-restart" ]]; then + echo -e "重启面板中..." + nginx -s reload 2>/dev/null || nginx -c /etc/nginx/nginx.conf + sleep 1 + reload_pm2 + fi else echo -e "\n更新$dir_root失败,请检查原因...\n" fi @@ -402,7 +405,7 @@ main() { log_path="$dir_log/update/${log_time}_$p1.log" case $p1 in update) - update_qinglong | tee $log_path + update_qinglong "$2" | tee $log_path ;; extra) run_extra_shell | tee -a $log_path