发布时间:2022-08-19 14:17
本文是在一个Centos容器中安装Python3、flask、uWSGI、Nginx等软件,运行flask项目,最后生成Docker镜像。
创建Centos容器
登录一台Linux主机,安装docker软件。
若还未安装doker,其安装部署可参考博文centos7安装配置docker
1.创建一个Centos容器,让它在后台运行。
docker run -d --name deploy1 --network host centos:7 tail -f /dev/null
-d # 让它以daemon方式在后台运行
--name deploy1 # 设置容器的名称
--network host # 让它使用宿主机的网卡,使得容器监听的所有端口直接暴露在宿主机上
centos:7 # 要运行的镜像及其版本
tail -f /dev/null # 让容器一直执行某条命令,以免没有任务而自动退出
2.进入Centos容器。
docker exec -it deploy1 /bin/bash
-it # 打开该容器的输入(stdin)和终端(tty)
bash # 在容器中执行bash命令,启动一个shell,供用户操作
按Ctrl+D退出容器。
将flask项目的源代码从宿主机拷贝到Centos容器中:
docker cp /root/flask_app deploy1:/root/
:/root/ # 容器中项目的目录
/root/flask_app #宿主机中项目位置
之后便可以在Centos容器里部署flask项目,不满意就销毁重建。
docker ps # 列出所有运行中的容器
docker stop <容器名或ID> # 终止一个运行中的容器
安装Python3及pip3
进入容器中的flask项目目录
1.安装Python3解释器:
参见博文:centos7安装python3
2.安装pip3
上面安装版本为Python3.6,已经自带了pip3。若出现未找到pip3命令的错误,可自行安装指定版本pip3
yum install python3-pip # 安装指定版本的pip
或者执行
locate pip3
它应该给你一个这样的结果列表
/<path>/pip3
/<path>/pip3.x
转到/usr/local/bin创建指向pip3所在位置的符号链接
ln -s /<path>/pip3.x /usr/local/bin/pip3
或者
可以使用python3 -m pip
作为pip3的同义词。
3.用pip3安装flask项目需要的Python第三方库。
如果项目目录下有一个requirements.txt,则可以用
pip3 install -r requirements.txt
一键安装所有第三方库。
如果某些依赖库没有成功安装,则后面尝试运行flask程序就可能报错,可以到那个时候再根据报错信息安装它。
安装依赖库的过程挺麻烦,可能少安装了某些依赖库、安装了多余的东西,也可能安装了错误的版本,甚至无法下载或安装。还好,遇到的报错大多可以在网上搜到解决方案。
生成requirements.txt方法:
vue3中update:modelValue的使用与不生效问题解决
istio 服务网格_如何在Kubernetes上使用Istio服务网格设置JHipster微服务
HTTP3 RFC标准正式发布,QUIC会成为传输技术的新一代颠覆者吗?
中国企业出海墨西哥红利客观,ADVANCE.AI为其保驾护航
全网最详细 Python如何读取NIFTI格式图像(.nii文件)和 .npy格式文件和pkl标签文件内容
6月更新 | Visual Studio Code Python
谁是你心目中最可爱的老师,好的老师不是改变你,而是帮助你认识自己
kernel 劫持seq_operations && 利用pt_regs