我的 Python Web 应用程序应使用哪个 Ubuntu 版本?

我的 Python Web 应用程序应使用哪个 Ubuntu 版本?

我正在使用 Python 和 Django 以及 UWSGI(用 C 编写)、NGINX 和 PIL(Python 图像库)构建一个安全密集型应用(存储信用卡号等)。我正努力在 Ubuntu 世界中脱颖而出,不再那么无知,所以我刚刚购买了Ubuntu 服务器官方手册。不过,仅仅阅读这本书并不能让我成为与这里的人相比业余水平的服务器管理员,所以我不得不问:

Ubuntu 有哪些版本是满足上述要求的最佳途径,并且更重要的是,为什么? 我读过一些关于哈代的好东西,但我不知道这些好东西为什么好。

答案1

基本上我会使用最新的长期支持服务截至撰写本文时,服务器版本为 10.04 (Lucid Lynx)。原因很简单!在服务器上,您确实希望使用几个月内不需要升级的系统。

没有理由在新服务器上使用 Hardy Heron,它已经两年了,一年后就会被废弃。

Ubuntu 每六个月发布一次,十八个月后就会被放弃,除了每隔一年发布一次并保留三年的 LTS 版本。

编辑:LTS 的服务器版本将保留五年。

答案2

Hardy 8.04 和 Lucid 10.04 都是长期支持 (LTS) 版本,并且将会得到相当长一段时间的支持。

两者都将分别在 2013 年和 2015 年之前获得更新和安全修复。与 Source Lab 的回答相反,LTS 服务器版本将维护5年

哈代有 python2.5作为默认值,而清醒的2.6作为默认值。如果 2.6 中并非所有依赖项都证明是可靠的,我建议现在继续使用 Hardy。

答案3

免责声明:我在“当前”版本上部署 Django 站点,而不是 LTS。我确信我做的并不完美,但这是我对此事的看法。

人们对 LTS 版本充满信心,但规则/好处并不完全适用于 Python 堆栈。

我之所以这么说,是因为将你的 Python 堆栈绑定到具有其自身更新的存储库可能会在进行分布式升级时带来灾难。版本跳跃所以在您看到第一个弃用通知之前,追踪已从 Django 中弃用和删除的内容要困难得多。

一段时间后,您也会对 Lucid 附带的 Django 版本感到厌烦。它不支持 Django 届时将具有的生产就绪功能,因此您需要从存储库之外进行安装。

它允许您保留多个相当静态的虚拟环境 Python 堆栈。这意味着您可以在旧版本上建立网站,在另一个堆栈中的其他版本上建立其他网站,在新堆栈上测试更新等。这是一个强大的概念,但您需要随时掌握版本,因为您没有包管理器来指导您进行安全更新。

http://www.saltycrane.com/blog/2009/05/notes-using-pip-and-virtualenv-django/

如果您想两全其美,请使用最新版本。在升级到下一级别之前,请转储映像、复制到本地虚拟机、启动它、升级软件包、测试您的站点并修复任何需要修复的问题。您必须花一些时间在软件包级别保持稳定,并且必须偶尔维护您的代码……


就“口味”而言,你想要服务器安装,不是桌面。ubuntu-desktop包括大量您不想要在生产服务器上使用的法兰。

还可获得“最小”安装上面几乎没有任何东西。我从两者开始,但ubuntu-standard为了方便,我必须安装软件包。这会将其变成基本ubuntu-server安装。

答案4

安装 Ubuntu Server 的 LTS 版本(当前 LTS 为 10.04)并安装它。这将为您提供安装各种服务器软件的基础,例如:

sudo tasksel install mail-server

安装邮件服务器即用型堆栈您可以使用列出所有任务

sudo tasksel --list-tasks

相关内容