在 AWS EC2 Linux 服务器上部署 Flask 应用的步骤类似,你也可以使用 Gunicorn。以下是具体步骤:
1. 连接到你的 AWS EC2 实例。你可以通过 SSH 进行连接,如:
“`
ssh -i /path/to/your/key.pem ec2-user@your-ec2-ip-address
“`
2. 在你的环境中安装 Gunicorn,如果你还没有安装 Flask,你也应该安装它:
“`
pip install flask gunicorn
“`
3. 将你的 Flask 应用上传到 EC2 实例。你可以通过 `scp`,`rsync`,或者其他方式将应用上传到 EC2 实例上。
4. 在服务器的命令行中,切换到 Flask 应用的目录,然后运行以下命令以启动你的 Flask 应用:
“`
gunicorn app:app
“`
这里,第一个 `app` 是你的文件名(不包括 `.py` 扩展名),第二个 `app` 是 Flask 对象的名字。
5. 你可能想让 Gunicorn 在后台运行并且在系统启动时自动启动。在 Linux 系统中,你可以使用 systemd 来实现这个需求。首先,创建一个新的 systemd 服务文件:
“`
sudo nano /etc/systemd/system/myflaskapp.service
“`
然后在文件中输入以下内容:
“`
[Unit]
Description=Gunicorn instance to serve myflaskapp
After=network.target
[Service]
User=ec2-user
Group=nginx
WorkingDirectory=/path/to/your/flask/app
Environment=”PATH=/your/python/path”
ExecStart=/your/python/path/gunicorn –workers 3 –bind unix:myflaskapp.sock -m 007 app:app
[Install]
WantedBy=multi-user.target
“`
然后启动并使能这个服务:
“`
sudo systemctl start myflaskapp
sudo systemctl enable myflaskapp
“`
6. 最后,你需要在 Nginx 或 Apache 中设置一个反向代理,将 HTTP 请求转发到 Gunicorn。这样可以提供更好的并发处理能力,并且可以方便地提供 HTTPS 支持。
以上就是部署 Flask 应用到 AWS EC2 Linux 服务器的基本步骤。你可能还需要考虑其他一些因素,比如 HTTPS,数据库配置等等。
========================================
(venv) [ec2-user@ip-172-31-46-237 website-backend—python]$ /home/ec2-user/venv/bin/gunicorn -b 172.31.46.237:5000 app:app &
在虚拟目录下进入项目目录,执行绝对目录下的虚拟环境之下的gunicorn命令,监听来自5000端口的访问
这里的地址,是来自服务器的两个网络接口,都是内网地址。
—————————–
使用
ifconfig
或
ip addr
命令来查看你的机器上的可用 IP 地址
根据你提供的信息,你的机器具有两个网络接口:
lo
和
eth0
。
lo
是回环接口,用于本地回环通信,它的 IP 地址是
127.0.0.1
。
eth0
是你的主要网络接口,它的 IP 地址是
172.31.46.237
。