1.获取Blog_mini源代码
有以下两种方式可以获取Blog_mini的源代码:
通过git的方式
通过Blog_mini项目主页下载
我们将介绍这两种方法,实际中,你只需要选择其中一种即可,我们推荐第一种方法。
(1)通过git获取源代码
首先确保你的系统已经安装了git版本控制系统:
1
2
3
<code>xpleaf@leaf:~$ git version</code>
<code>程序“git”尚未安装。 您可以使用以下命令安装:</code>
<code>sudo</code> <code>apt-get </code><code>install</code> <code>git</code>
如果还没有安装,请通过apt-get方式安装:
<code>xpleaf@leaf:~$ </code><code>sudo</code> <code>apt-get </code><code>install</code> <code>git</code>
<code>[</code><code>sudo</code><code>] xpleaf 的密码:</code>
安装完成后,在用户目录中创建一个project的目录:
<code>xpleaf@leaf:~$ </code><code>mkdir</code> <code>project</code>
<code>xpleaf@leaf:~$ </code><code>cd</code> <code>project/</code>
<code>xpleaf@leaf:~</code><code>/project</code><code>$</code>
从Blog_mini项目地址中克隆源代码:
<code>xpleaf@leaf:~</code><code>/project</code><code>$ git clone https:</code><code>//github</code><code>.com</code><code>/xpleaf/Blog_mini</code>
如果网络情况良好的话,很快就可以把代码克隆下来。
查看Blog_mini的源代码目录结构:
<code>xpleaf@leaf:~</code><code>/project/Blog_mini</code><code>$ </code><code>ls</code>
<code>app LICENSE migrations README.md requirements.txt</code>
<code>config.py manage.py Procfile requirements</code>
(2)通过Blog_mini项目主页下载源代码
如果你想通过该方式获得Blog_mini的源码的,那么请最好在有GUI界面的操作系统中进行操作,比如你可以先在Windows或Mac或有GUI界面的Linux操作系统中下载下来,再把它传到我们的CentOS操作系统中。
进入项目主页:
<a href="https://github.com/xpleaf/Blog_mini" target="_blank">https://github.com/xpleaf/Blog_mini</a>
点击Download ZIP按钮
下载后的文件名应该是:Blog_mini-master.zip
下载完成后,将其解压缩并传到Ubuntu操作系统中即可,Blog_mini的源码目录结构下方式(1)的是一样的。
2.安装pip
执行下面的命令安装即可:
<code>xpleaf@leaf:~</code><code>/project/Blog_mini</code><code>$ </code><code>sudo</code> <code>apt-get </code><code>install</code> <code>python-pip</code>
3.安装virtualenv
<code>xpleaf@leaf:~</code><code>/project/Blog_mini</code><code>$ </code><code>sudo</code> <code>apt-get </code><code>install</code> <code>virtualenv</code>
如果上面的命令说找不到virtualenv的,就使用下面的命令:
<code>xpleaf@leaf:~</code><code>/project/Blog_mini</code><code>$ </code><code>sudo</code> <code>apt-get </code><code>install</code> <code>python-virtualenv</code>
4.创建虚拟环境venv
在Blog_mini目录下执行下面的命令:
4
5
<code>xpleaf@leaf:~</code><code>/project/Blog_mini</code><code>$ virtualenv venv</code>
<code>Running virtualenv with interpreter </code><code>/usr/bin/python2</code>
<code>New python executable </code><code>in</code> <code>venv</code><code>/bin/python2</code>
<code>Also creating executable </code><code>in</code> <code>venv</code><code>/bin/python</code>
<code>Installing setuptools, pip...</code><code>done</code><code>.</code>
可以在Blog_mini下看到生成了一个venv目录:
<code>config.py manage.py Procfile requirements venv</code>
5.激活虚拟环境venv
在Blog_mini目录下:
<code>xpleaf@leaf:~</code><code>/project/Blog_mini</code><code>$ </code><code>source</code> <code>venv</code><code>/bin/activate</code>
<code>(venv)xpleaf@leaf:~</code><code>/project/Blog_mini</code><code>$</code>
注意看提示符的改变。
6.安装Blog_mini需求文件
执行如下命令:
<code>(venv)xpleaf@leaf:~</code><code>/project/Blog_mini</code><code>$ pip </code><code>install</code> <code>-i http:</code><code>//pypi</code><code>.douban.com</code><code>/simple/</code> <code>-r requirements</code><code>/common</code><code>.txt</code>
因为这里要安装Blog_mini所需的一些扩展包,所以需要一定时间,当然如果网络良好的话,很快就可以安装完成。
来看这一步,除了数据库的配置以外,Blog_mini的全部需求环境已经搭建好了,接下来要完成下面的两个任何之一:
使用sqlite作为默认数据库来运行Blog_mini
使用MySQL作为默认数据库来运行Blog_mini
数据库的使用只需要使用其中一种即可。
如果你是新手,或者你只是想快速搭建好基于Blog_mini的博客网站,你可以选择第一种,因为这不需要你做任何的配置。
如果你对MySQL的安装与使用本身有比较多的了解,同时你也想获得更好的性能,可以选择第二种。
当然,下面我也会给出详细的使用方法。
7.使用sqlite作为默认数据库来运行Blog_mini
Python本身就自带了sqlite数据库,因此如果你要使用sqlite来作为默认数据库,你不需要做任何配置。
接下来要做的就是运行Blog_mini了。
生成Blog_mini所需要的系统默认数据,请在Blog_mini目录下执行下面的命令:
<code>(venv)xpleaf@leaf:~</code><code>/project/Blog_mini</code><code>$ python manage.py deploy product</code>
<code>INFO [alembic.runtime.migration] Context impl SQLiteImpl.</code>
<code>INFO [alembic.runtime.migration] Will assume non-transactional DDL.</code>
<code>INFO [alembic.runtime.migration] Running upgrade -> 051691f120e6, fit to MySQL</code>
如果出现上面的提示就说明成功了!对于最后面出现的'fit to MySQL'大家不用觉得疑惑,这只是当时的一个备注,用来注明后面你要使用MySQL也是可以的,没有太大的意义。
查看生成的sqlite数据库:
<code>(venv)xpleaf@leaf:~</code><code>/project/Blog_mini</code><code>$ </code><code>ls</code>
<code>app config.pyc LICENSE migrations README.md requirements.txt</code>
<code>config.py data.sqlite manage.py Procfile requirements venv</code>
可以看到多了一个data.sqlite文件,这个文件就是sqlite数据库文件!
运行Blog_mini:
<code>(venv)xpleaf@leaf:~</code><code>/project/Blog_mini</code><code>$ gunicorn manage:app</code>
<code>[2016-03-08 11:49:11 +0000] [7189] [INFO] Starting gunicorn 19.4.5</code>
<code>[2016-03-08 11:49:11 +0000] [7189] [INFO] Listening at: http:</code><code>//127</code><code>.0.0.1:8000 (7189)</code>
<code>[2016-03-08 11:49:11 +0000] [7189] [INFO] Using worker: </code><code>sync</code>
<code>[2016-03-08 11:49:11 +0000] [7194] [INFO] Booting worker with pid: 7194</code>
上面的提示就说明Blog_mini已经成功运行了!不过这样的运行方式只能在本机以8000端口访问,如果你的Ubuntu操作系统本身没有GUI界面的话,你在本机也没有办法访问,所以我们可以用下面的方式运行。
以80端口运行Blog_mini:
<code>(venv)xpleaf@leaf:~</code><code>/project/Blog_mini</code><code>$ gunicorn -b 0.0.0.0:80 manage:app</code>
<code>[2016-03-08 11:50:43 +0000] [7202] [INFO] Starting gunicorn 19.4.5</code>
<code>[2016-03-08 11:50:43 +0000] [7202] [INFO] Listening at: http:</code><code>//0</code><code>.0.0.0:80 (7202)</code>
<code>[2016-03-08 11:50:43 +0000] [7202] [INFO] Using worker: </code><code>sync</code>
<code>[2016-03-08 11:50:43 +0000] [7207] [INFO] Booting worker with pid: 7207</code>
这样的话:
如果你是在有公网IP地址的服务器部署Blog_mini的,只需要在互联网上任何一台主机的浏览器上输入你的公网IP地址,就可以访问Blog_mini了。
如果你只是在局域网上部署Blog_mini的,那么在局域网上的任何一台主机的浏览器上输入你这台主机的IP地址也是可以访问的了。
不过,如果无法访问的话,那可能是防火墙的问题,你可以先把防火墙关掉:
<code>xpleaf@leaf:~$ </code><code>sudo</code> <code>ufw disable</code>
因为博主最开始是学网络工程出身的,所以大家如果在网络通信上遇到任何问题,都可以给我回复提问,我将一一解答。
到了这一步,你已经是成功地把Blog_mini的服务器部署好了,接下来你就可以运营你的个人博客网站了!Blog_mini功能强大,但使用非常简单,你可以参考博主关于Blog_mini介绍的博文来了解它的功能,当然你也可以自己探索,相信这对你来说都非常容易!
需要注意的是,Blog_mini支持后台管理(在主页底栏有'后台管理'登陆链接,点击即可进入登陆页面),下面是Blog_mini管理后台的默认账号密码:
密码:blog_mini
提示:在部署完Blog_mini后,里面是没有任何数据的,如果你需要一定的数据来测试Blog_mini的功能,可以在完成上面的操作后执行下面的命令:
<code>(venv)xpleaf@leaf:~</code><code>/project/Blog_mini</code><code>$ python manage.py deploy test_data</code>
这将会生成100篇博文和700条评论,同时还有博文分类和系统导航,以方便你验证Blog_mini的功能。
8.使用MySQL作为默认数据库来运行Blog_mini
(1)安装与配置MySQL
这一点继续第6步的操作,我们将使用MySQL数据库,在执行下面的步骤之前,请确保你的系统上已经安装并配置了MySQL数据库。如果你还没有安装,并且不知道怎么安装,可以有两种方法:
通过apt-get方式安装MySQL
通过源码的方式安装MySQL
新手可以直接使用第一种方法,当然觉得自己可以接受挑战的,也完全可以使用第二种方法!
MySQL的安装与配置完成之后,接着做下面的操作。
(2)安装Python的MySQL函数库
安装python必要的函数库:
<code>(venv)xpleaf@leaf:~</code><code>/project/Blog_mini</code><code>$ </code><code>sudo</code> <code>apt-get </code><code>install</code> <code>python-dev libmysqlclient-dev</code>
安装MySQL-python:
<code>(venv)xpleaf@leaf:~</code><code>/project/Blog_mini</code><code>$ pip </code><code>install</code> <code>MySQL-python</code>
<code>……</code>
<code>Successfully installed MySQL-python</code>
<code>Cleaning up...</code>
注意查看有没有安装成功的信息。
(3)为Blog_mini创建数据库
退出虚拟环境,回到用户主目录中:
<code>(venv)xpleaf@leaf:~</code><code>/project/Blog_mini</code><code>$ deactivate </code>
<code>xpleaf@leaf:~</code><code>/project/Blog_mini</code><code>$ </code><code>cd</code>
<code>xpleaf@leaf:~$</code>
登陆到MySQL数据库中(请先确保MySQL服务已经开启):
<code>[root@leaf ~]</code><code># mysql -u root -p</code>
<code>Enter password: </code>
<code>mysql></code>
为Blog_mini创建数据库:
6
7
8
9
10
11
12
13
<code>mysql> create database blog_mini default character </code><code>set</code> <code>utf8 collate utf8_general_ci;</code>
<code>Query OK, 1 row affected (0.04 sec)</code>
<code>mysql> show databases;</code>
<code>+--------------------+</code>
<code>| Database |</code>
<code>| information_schema |</code>
<code>| blog_mini |</code>
<code>| mysql |</code>
<code>| performance_schema |</code>
<code>4 rows </code><code>in</code> <code>set</code> <code>(0.04 sec)</code>
这里我们创建了名为`blog_mini`的数据库,同时指定编码和字符集分别为utf8和utf8_general_ic。
(4)创建数据库路径环境变量
Blog_mini的源码中指定了读取环境变量DATABASE_URL来获取数据库的路径,因此我们要为系统设定一个名为DATABASE_URL的环境变量,并且指定值为MySQL数据库的路径。
设定系统环境变量:
<code>xpleaf@leaf:~$ </code><code>export</code> <code>DATABASE_URL=mysql:</code><code>//root</code><code>:[email protected]</code><code>/blog_mini</code>
这里指定了使用的数据库路径为:mysql://root:[email protected]/blog_mini,其中123456是密码,其它也很容易知道。
验证系统环境变量:
<code>xpleaf@leaf:~$ </code><code>echo</code> <code>$DATABASE_URL</code>
<code>mysql:</code><code>//root</code><code>:[email protected]</code><code>/blog_mini</code>
有上面的输出即说明我们的设置没有问题。
(5)初始化Blog_mini系统默认数据
我们首先要初始化Blog_mini所需要的系统默认数据,以确保后面Blog_mini能够正确运行。
进入project/Blog_mini目录,初始化虚拟环境:
<code>xpleaf@leaf:~$ </code><code>cd</code> <code>project</code><code>/Blog_mini/</code>
初始化Blog_mini系统默认数据:
<code>(venv)xpleaf@leaf:~</code><code>/project/Blog_mini</code><code>$ python manage.py deploy product </code>
<code>INFO [alembic.runtime.migration] Context impl MySQLImpl.</code>
(6)运行Blog_mini
<code>(venv) [root@leaf Blog_mini]</code><code># python manage.py deploy test_data</code>
在Ubuntu上部署Blog_mini的文档到这里就结束了,如果大家在部署的过程中出现什么问题,请在博文下面给我留言,我将尽最大努力帮助大家!谢谢大家!
本文转自 xpleaf 51CTO博客,原文链接:http://blog.51cto.com/xpleaf/1748707,如需转载请自行联系原作者