【五子棋实战】第4章 部署五子棋计算接口到Window、Linux上

简介:  在上一章中,我们用python开发出了五子棋计算接口,并且可以在自己的电脑运行。然而随之而来有几个问题:

 在上一章中,我们用python开发出了五子棋计算接口,并且可以在自己的电脑运行。然而随之而来有几个问题:


 1、我想把游戏发给我朋友电脑上玩,但是他的电脑没有python运行环境,那他怎么运行接口文件呢?总不能让他装个python。


 2、我想把游戏发布到网上,一般都是linux平台,该怎么办呢?


 上面的两个场景涉及的问题分别是:python项目打包成exe可执行文件;python的Flask接口部署。


python项目打包成exe可执行文件


## 步骤一、安装pyinsatller


   打开命令行窗口,输入如下指令


  pip3 install pyinstalle


   等待pyinsatller库安装完成。


## 步骤二、使用pyinstaller打包Python程序


   1. 选中你要打包的py文件的上级目录,按住shift并且右键,在弹出的选项中点击"在此处打开命令行窗口"或者“在此处打开PowerShell窗口”。


   2. 输入以下指令,开始打包


pyinstaller -F -w (-i icofile) filename


   · filename表示py文件名


   · -w 表示隐藏程序运行时的命令行窗口(不加-w会有黑色窗口)


   · 括号内的为可选参数,-i icofile表示给程序加上图标,图标必须为.ico格式


   · icofile表示图标的位置,建议直接放在程序文件夹里面,这样子打包的时候直接写文件名就好


   · 输入完成,按回车,就会开始自动打包了,第一次打包过程可能比较缓慢


## 操作演示


   1. 在工程里面需要有个主py文件,我命名为main.pymain.py是flask开放的接口。


   2. 然后我在工程文件夹(main.py的上一级)按"shift"+右键,点"在此处打开PowerShell窗口"。


image.png


   3. 输入语句,开始打包main.py


pyinstaller -F -w main.py


   4. 打包完成,在dist文件夹里面有生成的main.exe


image.png


最终生成的文件main.exe,双击即可运行。


image.png


这样,即使是在没有python运行环境的电脑上也可以运行我们的接口了。


## 注意事项!!


   · 在导入库文件的时候,尽可能的小。用from xxx import xxx。这样在打包的时候,它提取的库文件不会多余,整个打包的项目也会小一点。


   · 导入的exe在dist文件夹里面,不能动,它需要用其他文件夹里面的库文件。


python的Flask接口部署(Linux)


## 步骤一、安装必要的软件依赖


  确保我们的Linux系统已经安装了Python和pip(Python包管理器)。如果没有安装,需要使用适用我们的Linux发行版的包管理器来安装。例如对于Ubuntu,可以使用以下命令安装:


sudo apt update
sudo apt install python3 python3-pip


## 步骤二、安装Flask和其他依赖


  安装我们项目里面需要的库:


pip install flask numpy 


## 步骤三、运行flask


  在终端中,使用以下命令在服务器上运行Flask应用程序:


python app.py


  如果你的应用程序监听的端口不是默认的80端口,可以使用–port选项指定端口号。


python app.py --port 5000


## 步骤四、配置服务器


  部署之后,还需要配置服务器到Flask应用程序的接口上。可以使用诸如Nginx或Apache等Web服务器来代理请求到Flask应用。具体配置取决于你使用的服务器软件和配置文件的位置。推荐使用nginx,很轻,而且操作比较简单。

相关文章
|
16天前
|
资源调度 JavaScript 搜索推荐
Linux系统之部署envlinks极简个人导航页
【4月更文挑战第11天】Linux系统之部署envlinks极简个人导航页
58 2
|
26天前
|
存储 前端开发 Linux
Linux系统之部署ToDoList任务管理工具
【4月更文挑战第1天】Linux系统之部署ToDoList任务管理工具
63 1
|
1月前
|
域名解析 网络协议 Linux
【Shell 命令集合 网络通讯 】Linux 设置和管理网络接口配置信息 netconfig命令 使用指南
【Shell 命令集合 网络通讯 】Linux 设置和管理网络接口配置信息 netconfig命令 使用指南
56 1
|
17天前
|
存储 算法 Linux
【实战项目】网络编程:在Linux环境下基于opencv和socket的人脸识别系统--C++实现
【实战项目】网络编程:在Linux环境下基于opencv和socket的人脸识别系统--C++实现
40 6
|
19天前
|
网络协议 Linux
在Linux中,管理和配置网络接口
在Linux中管理网络接口涉及多个命令,如`ifconfig`(在新版本中被`ip`取代)、`ip`(用于网络设备配置)、`nmcli`(NetworkManager的CLI工具)、`nmtui`(文本界面配置)、`route/ip route`(处理路由表)、`netstat/ss`(显示网络状态)和`hostnamectl/systemctl`(主机名和服务管理)。这些命令帮助用户启动接口、设置IP地址、查看连接和路由信息。不同发行版可能有差异,建议参考相应文档。
19 4
|
1月前
|
监控 网络协议 Linux
【Shell 命令集合 网络通讯 】Linux 显示网络 连接、路由表和网络接口信息 netstat命令 使用指南
【Shell 命令集合 网络通讯 】Linux 显示网络 连接、路由表和网络接口信息 netstat命令 使用指南
62 1
|
5天前
|
Ubuntu Linux 测试技术
Linux(32)Rockchip RK3568 Ubuntu22.04上部署 Docker: 详细配置与功能测试(下)
Linux(32)Rockchip RK3568 Ubuntu22.04上部署 Docker: 详细配置与功能测试
35 1
|
6天前
|
Ubuntu 网络协议 Linux
Linux(20) Ubuntu 20.04 网络接口自动切换路由配置
Linux(20) Ubuntu 20.04 网络接口自动切换路由配置
29 0
|
6天前
|
资源调度 JavaScript Ubuntu
Linux系统之部署briefing视频聊天系统
【4月更文挑战第21天】Linux系统之部署briefing视频聊天系统
40 2
|
19天前
|
Linux Shell 虚拟化
linux 部署docker容器虚拟化平台(二)--------docker 镜像制作方法
linux 部署docker容器虚拟化平台(二)--------docker 镜像制作方法
28 0