我有一个基于 Django 和 Python 2.6 构建的新网站,我已将其部署到云端(符合流行语且 Amazon micro EC2 实例是免费的!)。
这是我的详细说明:https ://docs.google.com/document/d/1qcZ_SqxNcFlGKNyp-CXqcFxXXsKs26Avv3mytXGCedA/edit?hl=en_US
由于这是一个新站点(并且想使用最新最好的),我在 Supervisor 之上使用了 Nginx 和 Gunicorn。
使用 YUM / easy_install 从主干安装的所有软件。
我的数据库是 Sqlite(目前 - 不确定下一步该去哪里,但这不是问题)。也在待办事项列表上:virtualenv + pip。
到现在为止还挺好。
我在 SVN 中的代码。我写了一个简单的 fabfile 来部署 - 检查最新的代码并通过 Supervisor 重新启动 Gunicorn。我将我的 DNS 名称与一个弹性 IP 挂钩。
有用。
我的问题是,如何在不中断服务的情况下更新网站?当我运行我的小更新脚本时,该站点的用户会得到 404s / 500s。
有没有办法在不添加另一台服务器的情况下做到这一点(价格是关键)?
我很想拥有一个登台系统(在不同的端口上?)以及登台和生产之间的无缝切换。在同一(免费)服务器上。通过织物。
我怎么做?运行两个站点的 Nginx 是否相同?我可以在不影响生产的情况下升级暂存吗?fabfile 会是什么样子?目录树会是什么样子?
谢谢!
塔尔。
有关的: