栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

Pycharm里建立Flask项目并把Flask项目部署到远程服务器

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Pycharm里建立Flask项目并把Flask项目部署到远程服务器

目录
    • 配置环境
    • 建立Flask项目
    • 下载XShell
    • 把项目部署到远程服务器上

配置环境

windows 10+python 3.7+tensorflow 2.3+Pycharm professional 2022

建立Flask项目

菜单栏里选择文件选项卡,点击新建项目

然后选择项目地址,解释器可以是之前的解释器,或者建一个新的虚拟环境就行,我的为了和后端一致就用了现有的tensorflow环境。

创建好的界面

Flask项目结构如下:static下面放css、js、images等文件,模板就放templates下

下载XShell

进入官网:https://www.xshell.com/zh/xshell-download/
点击免费授权页面,填写邮件信息

这里还是下一下xftp和Xshell比较好,后期传文件需要用Xftp

然后就会收到一封邮件

点击即可下载


然后就可以完成下载了。
再安装一下Xftp。


Xftp完成安装

在Xshell点击新建

填写ip和会话名

双击会话


再输入用户名(阿里云的好像是root

连了好几次才成功(是不是别人不花火就把人当傻子啊x
会话名前的点变绿才是连接上了

把项目部署到远程服务器上

进入dockerhub找所需镜像:https://registry.hub.docker.com/search?image_filter=official&q=&type=image
这里以tensorflow为例,输入tensorflow

点击tags选取所需的版本

因为我的算法在本地是用tensorflow 2.3.0的,所以保险起见还是用tensorflow-gpu 2.3.0,所以镜像安装指令为

docker pull tensorflow/tensorflow:2.3.0-gpu


在xshell中输入刚刚获得的指令docker pull tensorflow/tensorflow:2.3.0-gpu


然后输入

docker run -it -d --name heartbeat_vis_system -p 5005:5002 -v /root/heartbeat_vis_system:/root/heartbeat_vis_system tensorflow/tensorflow:2.3.0-gpu bash

注解如下:

也就是

docker run -it -d --name 项目名 -p 端口号1:端口号2 -v 存放路径:存放路径 镜像版本 bash

这里的端口号1要老师给的外端口范围中的一个,也就是5000-5020之间,端口号2就随意了不重复就行

输入docker ps就可以看到正在运行的容器了
然后记得把app.py的main部分加入这句话,这里的端口号就是端口号2

app.run(host='0.0.0.0', port= '5002')

点击文件传输图标,唤起Xftp

进入右边的文件夹再拖拽项目文件即可

再回到Xshell中输入 docker exec -it heartbeat_vis_system bash也就是 docker exec -it 项目名 bash

安装一下所需要的包,比如flask,指令就是pip install flask

然后一路cd进放app.py的文件夹,可以适当用一下Tab键补全(适当偷懒

cd root
ls
cd heartbeat_cis_system
ls
cd Heartbeat Vis System/
ls 


然后输入

python app.py

然后在浏览器输入ip:端口号1这里的端口号1是5505


有时候不得不感叹不愧是我,5000-5020都能记成5500-5520。不过瑶瑶老师真的很耐心哦,可以感觉到他对我的弱智问题的无语,但是都一直没有骂我呢嘎嘎嘎。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/858617.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号