从一台服务器运行两个Web应用程序?

时间:2018-07-17 12:56:32

标签: django

我有一台服务器,其中包含我所制造的第一个Web应用程序,该服务器的容量已用完一半(CPU或HDD),但仍然可以赚钱。我不想删除该应用程序,但我想在那儿托管一个新项目,但是设置非常...让我们说“我的第一个应用程序风格”不好。例如,那里没有虚拟环境。

这是我正在考虑的文件夹结构:

/public_html/
     /apps
     /core_app
     /3rd_apps #old-app django is here
     /static
     /media
     /new_app #this would be my new app
         /new app folders #with different django

new_app将拥有自己的django和其他所有内容。目前,我的环境变量指向应用程序3rd_apps和core_app。我不确定如果引入新应用程序并将更多环境变量指向new_app文件夹会发生什么。

此外,当前我正在那里使用nginx,gunicorn,postgres服务器和主管。

我认为为新应用程序使用相同的数据库服务器(并创建新数据库)应该不是问题。主管也应该没问题。我想我可以设置Nginx来处理不同位置的两个域。

我最大的担心是,在没有虚拟环境的情况下,这两个djangos会互相争斗。我不知道如何进行测试,因为我没有免费的服务器。

有人对此有经验吗?一些建议如何做到这一点?

1 个答案:

答案 0 :(得分:0)

现在就以正确的方式做事会为将来避免很多麻烦。

如果您不希望使用例如Docker,我建议

  • 每个应用程序一个UNIX用户
  • 应用程序用户主目录中的virtualenv(例如~/venv
  • 在用户主目录(例如,~/app)中提供Git工作副本
  • 用户主目录中的
  • 静态/媒体目录(例如~/var/static~/var/media

只要应用程序具有单独的数据库,就可以共享数据库服务器。