【问题标题】:Proper way to build web app with Django on remote web server在远程 Web 服务器上使用 Django 构建 Web 应用程序的正确方法
【发布时间】:2019-03-22 01:15:12
【问题描述】:

我对 Django 还很陌生,所以请原谅我的无知。

我正在我的远程 Web 服务器上开始我的第一个 Web 应用程序构建。我目前正在通过 SSH 连接到服务器并已启动 Django 项目。我刚刚启动了 Django 项目的开发服务器,它自动在http://127.0.0.1:8000/ 上提供服务。

我的问题是 - 在服务器上远程构建 Django Web 应用程序的正确方法是什么?我应该在我的计算机上构建应用程序,然后在完成后将项目传输到我的 Web 服务器吗?或者有没有办法让我访问开发服务器而不会弄乱我的 Web 服务器上的网站的域/IP 地址?

谢谢!

【问题讨论】:

    标签: python django ssh centos


    【解决方案1】:

    这并不是一个真正的 Django 特定问题,因为相同的基本方法适用于任何软件开发项目。

    • 为开发和生产创建不同的设置文件。对于 Django,这将涉及在您提到的生产设置中设置 ALLOWED_HOSTS 以及其他设置。 This checklist 对这一步很有帮助。使用环境变量隐藏秘密,并酌情在您的开发和生产机器中设置它们。
    • 使用 git 等版本控制系统并在本地推送更改,然后将它们拉到生产服务器上,然后运行 ​​Django 服务器。
      • 做得更好并设置 CI/CD 管道以自动完成此操作

    【讨论】:

    • 也许这是一个单独的问题——但是数据库呢?我的网络服务器上已经设置了一个数据库。我是否需要在我的本地 PC 上创建一个数据库,然后在我部署时合并或者它是如何工作的?
    • 通常您有单独的数据库用于开发和生产,因此我建议您创建一台本地 PC 用于开发。如果您正在开发中生成数据并希望在生产环境中使用它,也许有一种方法可以通过编写迁移脚本来为您的生产环境播种。
    【解决方案2】:

    是的,您应该在您的计算机上构建工作项目 :) 您可能无法在远程服务器上高效地编写好东西。

    然后您可能会创建 git 存储库,例如在 gitlab 上。 然后,您将在计算机上构建您的项目。 当你想在远程服务器上看到它时,你会将你的项目拉到那里。

    第一次正确部署它会有点棘手,但它并不是那么糟糕 + 那里有很多很好的说明,例如: https://www.digitalocean.com/community/tutorials/how-to-set-up-django-with-postgres-nginx-and-gunicorn-on-ubuntu-16-04

    希望我正确理解了您的问题。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-04-08
      • 2017-08-25
      相关资源
      最近更新 更多