美文网首页
python 网站部署--将flask+tensorflow布置

python 网站部署--将flask+tensorflow布置

作者: oword | 来源:发表于2021-01-22 11:01 被阅读0次

    环境 阿里云服务器+CentOS8+Anaconda3+Nginx+gunicorn+falsk+tensorflow

    问题一
    前面过程:在CentOS8中安装了Nginx,在Anaconda中安装了gunicorn,然后在conda虚拟环境中启动实例程序index.py
    gunicorn -b 127.0.0.1:5000 index:app
    其中127.0.0.1:5000是与Nginx交互的端口
    index是index.py文件名
    问题:Nginx启动后提示错误,错误描述端口被占用,也无法通过外网访问服务器程序
    原因:由于aliyun服务器默认将大多数端口设置为进入访问限制,所以,外网访问不到服务器程序
    解决方案:修改服务器配置安全组规则,开放端口


    UC截图1.png

    问题二
    前面过程:将配置安全组规则配置好后,文件可以访问,将文件传输到服务器 [ 从windows传到CentOS服务器使用putty最好 ] ,然后在conda环境中利用gunicorn启动程序文件
    问题:外网可以访问网页,可是却无法将文件上传
    原因:网页源文件上传地址忘记改为服务器地址
    解决方案:改网页文件

    问题三
    前面过程:远程登陆服务器打开程序后,外网可以正常访问和上传文件
    问题:登录服务器结束远程会话后,外网无法访问网站,[ 不可能一直开自己的电脑吧,那服务器要来干什么 ]
    但是Nginx依然在运行,Nginx会返回无法访问的页面
    原因:似乎每次结束会话的时候,服务器都会结束gunicorn程序,但是也不对,因为在下一次打开登陆服务器会话的时候,gunicorn进程依然存在,难道是每次结束会话服务器就会关闭conda的当前环境吗?因为程序是在conda环境中运行的,gunicorn也安装在conda环境中,云里雾里
    解决方案:使用aliyun推荐方式启动程序

    UC截图2.png
    使用推荐发送远程命令方式启动程序,在关闭会话后依然可以正常访问网站

    Tips:
    1、为什么不可以直接使用gunicorn而要用Nginx ?
    实验gunicorn -b x.x.x.x:5000 index:app 将x.x.x.x改为外网地址,gunicorn程序报错不可访问
    2、为什么要用anaconda而不直接安装flask和tensorflow?
    在CentOS环境中用pip安装tensorflow经常出错,用anaconda安装管理包很便捷
    3、为什么不在anaconda中安装Nginx?
    可以使用conda安装nginx,但是需要找配置nginx配置文件,找半天,不方便

    相关文章

      网友评论

          本文标题:python 网站部署--将flask+tensorflow布置

          本文链接:https://www.haomeiwen.com/subject/pqdszktx.html