宝塔部署Python项目问题汇总

@高效码农  December 9, 2020

大数据和AI的用途越来越广泛,再也不是大公司的专属;

一、ModuleNotFoundError: No module named 'json'

宝塔部署Python项目网上的教程有很多不在赘述;部署完成启动项目提示成功,但是状态一直是“已暂停”;查看日志报错信息为:

ModuleNotFoundError: No module named 'json'
解决方案:

修改配置文件中:

user = 'www' 修改为 user = 'root'

二、宝塔利用git+ webhooks 实现git更新远程同步云服务器

官网教程:https://gitee.com/help/articles/4181#article-header0

ssh -T git@gitee.com 这个命令不能少

添加webhooks后,一定在ssh命令行测试是否可以不用输入用户名密码即可clone项目

如果添加了rsa或者公钥依然要输入用户名密码可以试试,git仓库的ssh链接
2020-12-08T09:19:56.png

在shell脚本中也需要修改:

#!/bin/bash
echo ""
#输出当前时间
date --date='0 days ago' "+%Y-%m-%d %H:%M:%S"
echo "Start"
#判断宝塔WebHook参数是否存在
if [ ! -n "$1" ];
then 
          echo "param参数错误"
          echo "End"
          exit
fi
#git项目路径
gitPath="/www/wwwroot/$1"
#git 网址 注意!注意!注意!
#gitHttp="https://gitee.com/isu5cn/$1.git"
gitHttp="git@gitee.com/isu5cn/$1.git"

 
echo "Web站点路径:$gitPath"
 
#判断项目路径是否存在
if [ -d "$gitPath" ]; then
        cd $gitPath
        #判断是否存在git目录
        if [ ! -d ".git" ]; then
                echo "在该目录下克隆 git"
                git clone $gitHttp gittemp
                mv gittemp/.git .
                rm -rf gittemp
        fi
        #拉取最新的项目文件
        git reset --hard origin/master
        git pull
        #设置目录权限
        chown -R www:www $gitPath
        echo "End"
        exit
else
        echo "该项目路径不存在"
        echo "End"
        exit
fi

三、线上/线下 配置文件不一样,总是被同步怎么办?

解决方案:忽略不想提交的文件(忽略跟踪)

git update-index --assume-unchanged 要忽略的文件(建议绝对路径)       #忽略跟踪
git update-index --no-assume-unchanged 要恢复的文件(建议绝对路径)  #恢复跟踪

四、宝塔部署Python项目提示和实际不符

比如:项目起是启动成功,实际还是没有启动;已实际测试为准,并查看日志报错信息
比如:WebHook提示更新代码成功,实际没有更新成功



评论已关闭