修复start,restart模式下脚本无法执行的问题
This commit is contained in:
parent
baf702291c
commit
8b91043a91
58
jsite.sh
58
jsite.sh
@ -302,11 +302,7 @@ get_site_status() {
|
||||
fi
|
||||
|
||||
# 检查PM2进程状态
|
||||
local pm2_status=$(su - "jingrow" -c "
|
||||
export NVM_DIR=\"\$HOME/.nvm\"
|
||||
[ -s \"\$NVM_DIR/nvm.sh\" ] && \. \"\$NVM_DIR/nvm.sh\"
|
||||
pm2 list 2>/dev/null | grep -w '$site_name' | grep -c 'online' || echo '0'
|
||||
")
|
||||
local pm2_status=$(export NVM_DIR="/home/jingrow/.nvm" && [ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" && pm2 list 2>/dev/null | grep -w '$site_name' | grep -c 'online' || echo '0')
|
||||
|
||||
if [ "$pm2_status" != "0" ]; then
|
||||
echo "running"
|
||||
@ -1604,9 +1600,25 @@ build_site() {
|
||||
|
||||
# 启动网站
|
||||
start_site() {
|
||||
local status=$(get_site_status "$SITE_NAME")
|
||||
if [ "$status" = "not_exists" ]; then
|
||||
log_error "网站 $SITE_NAME 不存在"
|
||||
return 1
|
||||
fi
|
||||
|
||||
if [ "$status" = "running" ]; then
|
||||
log_warning "网站 $SITE_NAME 已在运行中"
|
||||
return 0
|
||||
fi
|
||||
|
||||
log_info "启动网站: $SITE_NAME"
|
||||
restart_site
|
||||
return $?
|
||||
|
||||
if ! (export NVM_DIR="/home/jingrow/.nvm" && [ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" && pm2 start '$SITE_NAME'); then
|
||||
log_error "网站启动失败"
|
||||
return 1
|
||||
fi
|
||||
|
||||
log_success "网站 $SITE_NAME 启动成功"
|
||||
}
|
||||
|
||||
# 停止网站
|
||||
@ -1624,11 +1636,7 @@ stop_site() {
|
||||
|
||||
log_info "停止网站: $SITE_NAME"
|
||||
|
||||
if ! su - "jingrow" -c "
|
||||
export NVM_DIR=\"\$HOME/.nvm\"
|
||||
[ -s \"\$NVM_DIR/nvm.sh\" ] && \. \"\$NVM_DIR/nvm.sh\"
|
||||
pm2 stop '$SITE_NAME'
|
||||
"; then
|
||||
if ! (export NVM_DIR="/home/jingrow/.nvm" && [ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" && pm2 stop '$SITE_NAME'); then
|
||||
log_error "网站停止失败"
|
||||
return 1
|
||||
fi
|
||||
@ -1647,18 +1655,18 @@ restart_site() {
|
||||
log_info "重启网站: $SITE_NAME"
|
||||
|
||||
if [ "$status" = "running" ]; then
|
||||
if ! su - "jingrow" -c "
|
||||
export NVM_DIR=\"\$HOME/.nvm\"
|
||||
[ -s \"\$NVM_DIR/nvm.sh\" ] && \. \"\$NVM_DIR/nvm.sh\"
|
||||
pm2 restart '$SITE_NAME'
|
||||
"; then
|
||||
if ! (export NVM_DIR="/home/jingrow/.nvm" && [ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" && pm2 restart '$SITE_NAME'); then
|
||||
log_error "网站重启失败"
|
||||
return 1
|
||||
fi
|
||||
else
|
||||
# 如果未运行,则启动
|
||||
start_site
|
||||
return $?
|
||||
log_info "网站未运行,正在启动..."
|
||||
if ! (export NVM_DIR="/home/jingrow/.nvm" && [ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" && pm2 start '$SITE_NAME'); then
|
||||
log_error "网站启动失败"
|
||||
return 1
|
||||
fi
|
||||
log_success "网站启动成功"
|
||||
fi
|
||||
|
||||
log_success "网站 $SITE_NAME 重启成功"
|
||||
@ -1684,11 +1692,7 @@ show_site_status() {
|
||||
# 显示PM2详细状态
|
||||
if [ "$status" != "not_exists" ]; then
|
||||
log_info "PM2状态:"
|
||||
su - "jingrow" -c "
|
||||
export NVM_DIR=\"\$HOME/.nvm\"
|
||||
[ -s \"\$NVM_DIR/nvm.sh\" ] && \. \"\$NVM_DIR/nvm.sh\"
|
||||
pm2 list | grep -E '(App name|$SITE_NAME)' || echo '未找到PM2进程'
|
||||
"
|
||||
(export NVM_DIR="/home/jingrow/.nvm" && [ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" && pm2 list | grep -E '(App name|$SITE_NAME)' || echo '未找到PM2进程')
|
||||
fi
|
||||
}
|
||||
|
||||
@ -1730,11 +1734,7 @@ show_site_logs() {
|
||||
fi
|
||||
|
||||
log_info "网站 $SITE_NAME 的日志:"
|
||||
su - "jingrow" -c "
|
||||
export NVM_DIR=\"\$HOME/.nvm\"
|
||||
[ -s \"\$NVM_DIR/nvm.sh\" ] && \. \"\$NVM_DIR/nvm.sh\"
|
||||
pm2 logs '$SITE_NAME'
|
||||
"
|
||||
(export NVM_DIR="/home/jingrow/.nvm" && [ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" && pm2 logs '$SITE_NAME')
|
||||
}
|
||||
|
||||
# ========================================
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user