返回

Django VPS 主机,预装

这个 Django 主机方案是一台装好 Django 6.1、Gunicorn、PostgreSQL 和 Caddy 的 VPS,项目通过 HTTPS 地址打开,并使用生产环境设置。下单后安装会自行完成,管理地址、登录名和密码显示在您的面板中。通过 SSH 连接,把您自己的应用放到 /home/app/proje,需要时随时拥有 root 权限。

您需要多大算力?

合计$2.59/月

价格含增值税。

RAM 和 CPU 可随时升级或降配。磁盘只能增大,建议从小配置开始。

您的 Django 服务器上安装什么?

  • Django 6.1 和 Gunicorn 26,位于 /home/app/proje/venv 的虚拟环境中
  • 使用 psycopg 3 的 PostgreSQL:一个名为 django 的数据库,仅可通过 127.0.0.1 访问
  • proje/uretim.py 中的生产环境设置:关闭 DEBUG,密钥存放在 /etc/seturack-django.env
  • 一个现成的 yonetici 超级用户,管理站点位于 /admin/
  • 一个名为 uygulama 的 systemd 服务:127.0.0.1:8000 上的 2 个 Gunicorn 工作进程
  • 通过 Caddy 提供 HTTPS,并直接在 /static/ 提供静态文件
  • 防火墙开放 22、80 和 443 端口,8000 和 5432 端口仅限内部使用

Django 需要多大的配置?

Django 文档没有给出 RAM 数值。本安装在同一台服务器上运行两个 Gunicorn 工作进程和 PostgreSQL。经验上,小项目 1 GB 起步,使用 Celery、图像处理或更多工作进程时适合 2 到 4 GB。Gunicorn 文档建议从 (2 x 核心数) + 1 个工作进程开始,所以增加 CPU 之后,请在服务文件中调高数量。在面板中调整配置时,您的数据和 IP 保持不变。

用途配置价格选择
入门 1 GB RAM · 1 vCore · 25 GB NVMe $2.59/月
中等 2 GB RAM · 1 vCore · 40 GB NVMe $4.02/月
强劲 4 GB RAM · 2 vCore · 60 GB NVMe $6.91/月

适合谁?

  • 把 Django 项目从 runserver 迁到生产环境的开发者
  • 构建 REST API 或后台管理为主的业务应用的人
  • 想直接从写代码开始、不想自己配置 Gunicorn、Caddy 和 PostgreSQL 的人
  • 用户在土耳其、希望从伊斯坦布尔运行的 Python 应用

下单之后会发生什么?

  1. 设定配置并完成付款。
  2. 服务器启动后,Django 会自行安装。在我们的真实服务器测试中,这大约用了 3.5 分钟。
  3. 在“概览”标签页上,打开“管理地址”链接,使用“登录名”和“密码”两行中的值登录。
  4. 通过 SSH 连接,运行 su - app 和 cd ~/proje,然后加载设置:set -a; . /etc/seturack-django.env; set +a
  5. 添加您的应用,用 venv/bin/pip install 安装软件包,然后运行 venv/bin/python manage.py migrate 和 collectstatic。
  6. 以 root 身份运行 systemctl restart uygulama。

每台服务器都包含

  • 价格含每日备份
  • 不限流量
  • 完整 root 权限
  • 之后可升级或降配 RAM 和 CPU,并扩大磁盘
  • 位置:Istanbul · IST-1。

须知

  • 把新应用添加到 proje/settings.py 的 INSTALLED_APPS 中。uretim.py 继承自该文件,并覆盖 DEBUG 和数据库设置。
  • manage.py 命令需要这些环境变量。每次会话中请先加载 /etc/seturack-django.env。
  • 连接域名时,还要修改 /etc/seturack-django.env 中的 DJANGO_ALAN 和 DJANGO_ADRES,否则 Django 会因为 ALLOWED_HOSTS 而拒绝请求。
  • PostgreSQL 不对外开放。在服务器上,以 django 用户连接 127.0.0.1:5432,密码在 DJANGO_DB_SIFRE 中。
  • 本安装不会设置邮件和用户上传(MEDIA_ROOT)。这两项都需要您在 uretim.py 中自行定义。
  • Django、Python 软件包和您的代码都需要您自己更新。上线前请先运行 manage.py check --deploy。

Django 常见问题

如何在 VPS 上部署 Django 项目?

通过 SSH 连接,运行 su - app,在 ~/proje 中加载设置文件,添加您的代码,然后运行 migrate 和 collectstatic。接着以 root 身份运行 systemctl restart uygulama。Gunicorn 和 Caddy 已经装好,不需要再设置别的。

Django 主机需要多少 RAM?

Django 没有官方的 RAM 数值。经验上,两个 Gunicorn 工作进程加 PostgreSQL 的小型项目从 1 GB 起步就不错,有后台任务或图像处理则用 2 到 4 GB。如果不够,可以在面板中升级配置。

服务器上是哪些 Python 和 Django 版本?

已安装 Django 6.1 和 Ubuntu 24.04 自带的 Python 3.12,软件包位于 /home/app/proje/venv 虚拟环境中。Django 6.1 官方支持 Python 3.12 及更高版本。新软件包请用 venv/bin/pip 添加。

如何连接 Django 的数据库?

PostgreSQL 只在服务器本机运行,不对外开放。数据库和用户都是 django,地址是 127.0.0.1:5432,密码是 /etc/seturack-django.env 中的 DJANGO_DB_SIFRE。在您的电脑上,可以用 ssh -L 5432:127.0.0.1:5432 root@IP 建立隧道。

如何把自己的域名连接到 Django?

把 A 记录指向您的服务器,替换 /etc/caddy/Caddyfile 中所有的旧名称,并更新 /etc/seturack-django.env 中的 DJANGO_ALAN 和 DJANGO_ADRES。然后以 root 身份运行 systemctl reload caddy 和 systemctl restart uygulama。

Django 可以使用 WebSocket 或 Channels 吗?

本安装通过 Gunicorn 和 proje.wsgi 运行 WSGI。若要使用 WebSocket,请把 /etc/systemd/system/uygulama.service 中的 ExecStart 一行指向 ASGI 服务器。Caddy 会放行 WebSocket 连接。

了解更多,查看类似应用