原创

运维文档: Web 应用部署指南

温馨提示:
本文最后更新于 2024年07月25日,已超过 253 天没有更新。若文章内的图片失效(无法正常加载),请留言反馈或直接联系我

运维文档: Web 应用部署指南

1. 简介

本文档旨在指导用户如何部署和维护名为 "MyApp" 的 Web 应用。该应用基于 Python 语言开发,使用 Flask 框架构建,并使用 MySQL 数据库存储数据。

2. 部署环境

  • 操作系统: Ubuntu 20.04 LTS
  • Web 服务器: Nginx
  • 应用服务器: Gunicorn
  • 数据库: MySQL

3. 部署步骤

3.1 安装依赖

bash sudo apt update sudo apt install python3-pip python3-venv nginx mysql-server

3.2 创建虚拟环境

bash python3 -m venv myapp_env source myapp_env/bin/activate

3.3 安装依赖包

bash pip install -r requirements.txt

3.4 配置数据库

  1. 创建数据库:

sql CREATE DATABASE myapp_db;

  1. 创建用户并赋予权限:

sql CREATE USER 'myapp_user'@'localhost' IDENTIFIED BY 'your_password'; GRANT ALL PRIVILEGES ON myapp_db.* TO 'myapp_user'@'localhost';

  1. 修改数据库配置文件:

[client] user = myapp_user password = your_password database = myapp_db

3.5 配置应用

  1. 修改应用配置文件:

```python

app.py

SQLALCHEMY_DATABASE_URI = 'mysql://myapp_user:your_password@localhost/myapp_db' ```

3.6 配置 Nginx

  1. 创建 Nginx 配置文件:

```nginx server { listen 80; server_name example.com;

location / {
    proxy_pass http://127.0.0.1:5000;
    proxy_set_header Host $host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}

} ```

  1. 重启 Nginx:

bash sudo systemctl restart nginx

3.7 启动应用

bash gunicorn --bind 0.0.0.0:5000 app:app

4. 维护

  • 定期更新依赖包
  • 定期备份数据库
  • 监控应用日志
  • 定期检查系统资源使用情况

5. 故障排除

  • 检查应用日志以定位错误
  • 检查 Nginx 日志以查看代理问题
  • 检查数据库连接状态

6. 联系方式

7. 版本记录

| 版本 | 日期 | 修改内容 | |---|---|---| | 1.0 | 2023-11-09 | 初始版本 |

注意: 本文档仅供参考,实际部署过程可能需要根据具体情况进行调整。

正文到此结束