如何在CentOS 7安装Django的Web框架

介绍

Django是编写Python Web应用程序的强大框架。 使用Django这样的全功能框架,您可以更快地启动和运行应用程序和站点,而无需担心常见的结构代码将其绑定在一起。 框架让您专注于应用程序的独特部分,并让这些工具做得非常繁重。

在本指南中,我们将演示在CentOS 7服务器上安装Django的各种方法。 安装后,我们将简要介绍如何启动一个项目,作为您的网站的基础。

安装EPEL存储库

我们将在下面讨论的所有安装方法依赖于用于CentOS和RedHat式发行版的EPEL存储库。 EPEL存储库包含未作为核心分发的一部分维护的额外包,这是相当稀疏的。

配置对EPEL存储库的访问权限显得比过去简单得多。 在服务器上,可以配置yum通过键入要使用EPEL存储库:

sudo yum install epel-release

您现在可以访问在EPEL存储库中维护的所有应用程序。

不同方法

有多种不同的方法可以根据您的需要和如何配置您的开发环境来安装Django。 这些具有不同的优势,一种方法可能更适合您的具体情况比其他。

一些不同的方法如下:

  • 全球从包安装 :本EPEL软件库包含可以很容易地与传统的安装包的Django yum包管理器。 这很简单,但不像一些其他方法那么灵活。 此外,存储库中包含的版本可能落后于项目提供的正式版本。
  • 全球通过PIP安装 :该pip工具是Python包的软件包管理器。 如果你安装了pip ,可以很容易地在系统级别,任何用户使用安装Django。 这应该总是包含最新的稳定版本。 即使如此,全球安装本身也不太灵活。
  • 通过PIP在VIRTUALENV安装 :Python的virtualenv包允许您创建各种项目的自包含环境。 使用此技术,您可以在项目目录中安装Django,而不会影响更大的系统。 这允许您轻松提供每个项目的自定义和包。 与全球可访问的安装相比,虚拟环境增加了一些轻微的心理和进程开销,但提供了最大的灵活性。
  • 开发版本通过混帐安装 :如果你想安装最新开发版本,而不是稳定版,你将必须获得从该代码git回购。 这是必要的,以获得最新的功能/修复程序,可以在全球或本地。 但是,开发版本没有相同的稳定性保证。

考虑到上述注意事项和质量,请从以下说明中选择最适合您需要的安装方法。

从软件包全局安装

如果您希望使用EPEL存储库安装Django,这个过程非常简单。

你可以简单的使用yum软件包管理器下载并安装相关的包:

sudo yum install python-django

您可以键入以下内容来测试安装是否成功:

django-admin --version
1.6.10

这意味着软件已成功安装。 你也可能注意到Django版本不是最新的稳定版本。 要了解一些关于如何使用该软件,可以直接跳到学习如何创建示例项目

全局安装通过pip

如果你想在全球范围内安装最新版本的Django的,更好的选择是使用pip ,Python的包管理器。 首先,我们需要安装pip包管理器。

您可以安装pip从EPEL库通过键入:

sudo yum install python-pip

一旦你有pip ,你可以很容易地在全球安装Django通过键入:

sudo pip install django

您可以通过键入以下内容来验证安装是否成功:

django-admin --version
1.7.5

正如你所看到的,可以通过版本pip更高达最新比从EPEL软件库之一(你很可能会与上述不同)。

通过pip在Virtualenv中安装

也许,您的系统上安装Django最灵活的方式是使用virtualenv工具。 此工具允许您创建虚拟Python环境,您可以在其中安装所需的任何Python包,而不会影响系统的其余部分。 这允许您基于每个项目选择Python包,无论与其他项目的要求冲突。

我们将开始通过安装pip来自EPEL软件库:

sudo yum install python-pip

一旦pip安装,你可以用它来安装virtualenv键入包:

sudo pip install virtualenv

现在,无论何时启动一个新项目,都可以为其创建一个虚拟环境。 首先创建并移动到新的项目目录:

mkdir ~/newproject
cd ~/newproject

现在,通过键入以下内容在项目目录中创建一个虚拟环境:

virtualenv newenv

这将安装Python的独立版本,以及pip您的项目目录中,成为一个孤立的目录结构。 我们选择拨打我们的虚拟环境newenv ,但你应该命名为描述性的东西。 将使用您选择的名称创建一个目录,该目录将包含将要安装软件包的文件层次结构。

要将软件包安装到隔离环境中,必须通过键入以下命令来激活它:

source newenv/bin/activate

您的提示应该更改以反映您现在处于虚拟环境中。 它看起来像( newenv )username@hostname:~/newproject$

在新的环境中,你可以使用pip来安装Django。 请注意,您不需要使用sudo ,因为你是在本地进行安装:

pip install django

您可以键入以下内容来验证安装:

django-admin --version
1.7.5

离开你的虚拟环境中,你需要发出deactivate从系统上任何地方的命令:

deactivate

您的提示应该恢复到常规显示。 当您希望再次处理项目时,应重新激活虚拟环境,方法是重新进入项目目录并激活:

cd ~/newproject
source newenv/bin/activate

开发版本通过git安装

如果你需要的Django的开发版本,你必须下载并从其安装Django git存储库。

要做到这一点,你需要安装git系统与yum 我们也将安装pip Python包管理器。 我们将使用它来处理Django在下载后的安装:

sudo yum install git python-pip

一旦你git ,你可以克隆Django的存储库。 在版本之间,此存储库将具有更多最新的功能和错误修复,可能会牺牲稳定性。 您可以克隆存储库到一个名为目录django-dev键入你的home目录内:

git clone git://github.com/django/django ~/django-dev

一旦库被克隆,您可以使用安装pip 我们将使用-e选项中的“编辑”模式,从版本控制安装时,这是需要安装:

sudo pip install -e ~/django-dev

您可以通过键入以下内容来验证安装是否成功:

django-admin --version
1.9.dev20150305200340

请注意,您还可以使用结合这一战略virtualenv ,如果你想在一个单一的环境中安装的Django的开发版本之上。

创建示例项目

现在你已经安装了Django,我们可以简要地告诉你如何开始项目。

您可以使用django-admin命令来创建一个项目:

django-admin startproject projectname
cd projectname

这将创建一个名为projectname当前目录中。 在此,管理脚本将被创建和另一个名为目录projectname将与实际的代码来创建。

:如果您在您与使用创建的项目目录已经virtualenv的命令,你可以告诉Django通过键入此放置管理脚本和内部目录到当前目录没有额外层(注意结尾点):

django-admin startproject projectname .

要在更新版本的Django上引导数据库(默认情况下使用SQLite),可以键入:

python manage.py migrate

如果migrate命令不起作用,你可能正在使用Django的旧版本(可能是安装装配相反,你可以键入:

python manage.py syncdb

在此过程中,您将被要求创建一个管理用户。 选择用户的用户名,电子邮件地址和密码。

如果您使用了migrate上面的命令,你需要手动创建管理用户。 您可以通过键入以下内容创建管理用户:

python manage.py createsuperuser

系统将提示您输入用户的用户名,电子邮件地址和密码。

一旦你有一个用户,你可以启动Django开发服务器,看看一个新的Django项目是什么样子。 您只应将其用于开发目的。 跑:

python manage.py runserver 0.0.0.0:8000

访问你的服务器的IP地址后面:8000在Web浏览器

server_ip_address:8000

你应该看到这样的东西:

Django公共页面

现在,追加/admin你的URL的末尾才能到管理员登录页面:

server_ip_address:8000/admin

Django管理员登录

如果您输入刚刚创建的管理用户名和密码,您应该转到网站的管理部分:

Django管理页面

当您完成翻翻默认站点,您可以通过键入停止开发服务器CTRL-C在终端。

您创建的Django项目为设计更完整的网站提供了结构基础。 查看Django文档,了解有关如何构建应用程序和自定义网站的更多信息。

结论

您现在应该在CentOS 7服务器上安装Django,提供创建功能强大的Web应用程序所需的主要工具。 您还应该知道如何启动新项目并启动开发人员服务器。 利用Django等完整的Web框架可以帮助您更快地开发,让您只专注于应用程序的独特方面。

赞(52) 打赏
未经允许不得转载:优客志 » 系统运维
分享到:

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏