华为云x86_64 openEuler 20.03 64bit 部署Python-web

一、准备阶段

1.注册华为云账号,完成实名认证。

2.申请1个月的免费弹性服务器(ecs,x86_64 openEuler 20.03 64bit)作为实验。

3.修改安全组,允许远程登录(22端口);密码直接重置。

4.通过公网IP登录root账号(工具:MobaXterm_Personal_22.1,通过SSH建立session)

注册新用户:(注:user_name可替换为自己设置的用户名)

useradd user_name
passwd user_name

输入新密码,并重复输入一次。

二、环境搭建

1.安装miniconda以控制环境

(1)在https://docs.conda.io/en/latest/miniconda.html选择合适的版本,笔者选择Miniconda3-latest-Linux-x86_64.sh,下载到本机。

(2)在普通用户目录(/home/user_name)下,执行

mkdir -p downfile/other

建立两级文件夹,来存放上传的文件。

(3)将sh文件上传到新建的目录下。(通过MobaXterm的可视化按钮Upload)

(4)在other目录下,执行一键部署脚本:

sh Miniconda3-latest-Linux-x86_64.sh

然后是一个会打印license协议内容,回车即可;接受yes。

(5)选择安装目录,默认为用户目录下(即/home/user_name/miniconda3),然后进行安装,再输入yes初始化conda。

(6)断开终端,再次进入,发现默认激活的是伪终端,会在 [] 的前面带有 (base)。执行:

conda config --set auto_activate_base false

再次连接时,默认终端没有就不是伪终端 (base) 了。

(7)测试,执行:

conda activate

进入conda环境,即伪终端 (base) 。

查看conda版本和Python版本:

conda -V
python -V

输出版本号则安装并运行成功。

conda可以切换国内镜像源:

conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge 
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/msys2/

conda的更多操作请自行查询学习(可参考链接2),pip也可以酌情换源。

至此,miniconda安装完成。

2.搭建Python虚拟环境

(1)将本机上的环境进行打包,导出requirements.txt文件。参考链接3。

由于笔者使用conda环境进行开发,故以此为例。需要注意的是,conda和pip导出的requirements.txt文件不一样,无法通用。

在本机通过“命令提示符”,进入开发使用的conda环境,选择并进入到一个工作目录(cd命令),使用pip,执行:

pip freeze > requirements.txt

便在工作目录下生成了当前conda环境的requirements.txt文件。

(2)在普通用户目录(/home/user_name)下建立两级文件夹(/python_env/subject_name)来存放项目文件,将requirements.txt文件上传到该目录下。

注:subject_name一般为为项目名称。

(3)执行:

conda create --name py39_som python=3.9

加载完后输入“yes”,建立以Python3.9为基础的名为“py39_som”的虚拟环境。

(4)执行:

conda activate py39_som

进入环境。

(5)执行:

cd /home/user_name/python_env/subject_name/

进入项目目录。

(6)执行:

pip install -r pip_requirements.txt

即可,安装所需第三方包。

至此,所需Python环境搭建完成。

三、部署项目

(1)上传文件:将包含py文件和静态文件的项目文件夹“main_app“压缩为”main_app.zip“,通过MobaXterm上传到项目目录(/home/user_name/python_env/subject_name)下。

(2)在项目目录下,解压缩,执行:

unzip main_app.zip

将所有文件解压到“main_app“文件夹中。

(3)执行:

cd ./main_app

进入“main_app“文件夹中。

(4)进入之前建好的conda虚拟环境“py39_som”:

conda activate py39_som

(5)运行主程序:

python app_main.py

或者应用nohup启动,在后台运行:(记着进程号,方便后期kill)

nohup python app_main.py

(6)记着打开云服务器控制台相应的端口,比如我使用的是8080,就需要在“控制台-安全组”设置入方向规则,添加放行“TCP:8080”。

(7)在浏览器输入“http://公网IP:端口号/”即可访问。

至此,项目部署完成。

参考链接:

1.https://blog.csdn.net/frdevolcqzyxynjds/article/details/123283242

  1. https://blog.csdn.net/menc15/article/details/71477949

  1. https://zhuanlan.zhihu.com/p/429020389

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐