Python 在VPS上托管多个Django实例
我正从WordPress转向定制的Python应用程序 我已经决定使用Django作为我的Python框架,目前我唯一的问题是关于托管。我目前的共享托管环境非常适合WordPress(CloudLinux上的WHM),但在Apache/cPanel上为Django提供服务似乎是一帆风顺的,尽管我还没有在我的新托管公司尝试过。-谁在cPanel中启用了Python 对我来说,最简单的方法是什么来建立一个VPS来运行一个托管环境,比如说20个网站?我在virtualenv中开发所有东西,但我还没有在生产环境中运行Django的经验。我认为venv不够安全,或者存在可伸缩性问题?我读过一些关于人们使用Docker在VPS上设置单独的Django实例的文章,但我不确定他们是否编写了自己的管理系统 我的理解是,每个Python/Django实例都需要驻留在该虚拟容器中的uWSGI和Nginx?我正在寻找一个简单而健壮的解决方案,在VPS上托管20个Django站点——有现成的解决方案吗?如果方向正确,我也很乐意开发一个VPS并建立一个VPS 任何智慧都会被感激地接受Python 在VPS上托管多个Django实例,python,django,nginx,web-hosting,uwsgi,Python,Django,Nginx,Web Hosting,Uwsgi,我正从WordPress转向定制的Python应用程序 我已经决定使用Django作为我的Python框架,目前我唯一的问题是关于托管。我目前的共享托管环境非常适合WordPress(CloudLinux上的WHM),但在Apache/cPanel上为Django提供服务似乎是一帆风顺的,尽管我还没有在我的新托管公司尝试过。-谁在cPanel中启用了Python 对我来说,最简单的方法是什么来建立一个VPS来运行一个托管环境,比如说20个网站?我在virtualenv中开发所有东西,但我还没有在
安迪:)传统方法
- Virtualenv已经足够好了,完全可以投入生产使用。您可以在同一个VM上为多个项目使用多个virtualenv
- 如果您有多个项目的多个数据库引擎。比如,MySQL代表一个,PostgreSQL代表另一个,类似这样的东西,那么你只需要分别设置它们
- 安装Nginx并根据项目进行配置
- 安装主管以单独管理(重新启动/启动/停止)每个项目
- 项目需要的任何东西。
这里它有一个巨大的缺点。因为您不能简单地将数据库引擎上的不同版本用于不同的项目。因此,强烈建议采用集装箱运输。
- 使用Docker(Docker compose)进行本地和生产部署
- 使用Nginx配置uWsgi(docker上提供)
- 使用任何类似Jenkins的工具创建CI/CD管道
- 使用像Raygun这样的好工具监控您的项目
就是这样。传统方法
- Virtualenv已经足够好了,完全可以投入生产使用。您可以在同一个VM上为多个项目使用多个virtualenv
- 如果您有多个项目的多个数据库引擎。比如,MySQL代表一个,PostgreSQL代表另一个,类似这样的东西,那么你只需要分别设置它们
- 安装Nginx并根据项目进行配置
- 安装主管以单独管理(重新启动/启动/停止)每个项目
- 项目需要的任何东西。
这里它有一个巨大的缺点。因为您不能简单地将数据库引擎上的不同版本用于不同的项目。因此,强烈建议采用集装箱运输。
- 使用Docker(Docker compose)进行本地和生产部署
- 使用Nginx配置uWsgi(docker上提供)
- 使用任何类似Jenkins的工具创建CI/CD管道
- 使用像Raygun这样的好工具监控您的项目