运用Ghost搭建个人博客
作为一个手艺人员,平常都邑有写一些博客,分享一些文章(我们做手艺的就是爱分享)。因而也诞生了异常多的开源博客体系,比如像wordpress
也是如今天下最盛行,运用最广的一个天源博客体系,有异常多的插件及模版。但近来获得的音讯是”新的wordpress当摒弃php,从而运用node.js作为主要言语”了,由此看来将来nodeJS 必火啊。
Ghost是一个简介而又轻量级的天源博客,它支撑多人保护,如今有许多手艺大牛也都是运用的这个博客体系。由于它的简约、文雅所以我也试着搭建了几个。
然后我就道貌岸然的抄了Ghost的一段简介:
Ghost 是一套基于 Node.js 构建的开源博客平台(Open source blogging platform),具有易用的誊写界面和体验,博客内容默许采纳 Markdown 语法誊写,目的是庖代痴肥的 WordPress。
下面我就简朴解说一下在linux体系下怎样运用Ghost搭建搭建个人博客网站。
所运用的服务器是 亚马逊的AWS 它有一年的免费限期,所以我也就整一个试了试,觉得还行,就是衔接有点慢。毕境服务器在国外嘛,也是能够明白的,假如有朋侪有兴致的话在下面留言。
装置 Node
以下体式格局仅代表我个人的装置履历,假如有不正确的话请去官网看看,那里有越发细致的申明,着实搞不定的话能够去google搜搜看,或在Stack Overflow讨教一下,应当会有人回复你的。( ̄▽ ̄)
ubuntu 装置
由于我运用的是ubuntu体系,所以直接实行敕令就好了:
sudo apt-get install nodejs
sudo apt-get install npm
装置要领很简朴有木有…
假如是CentOs体系的话能够尝尝用yum举行装置,假如没有的话,能够参考下面的装置要领…
CentOS 装置
下载源码,你须要在nodejs.org下载最新的Nodejs版本:
wget https://nodejs.org/dist/v4.2.2/node-v4.2.2-linux-x64.tar.gz
解压源码:
tar zxvf node-v4.2.2-linux-x64.tar.gz
编译装置:
cd node-v4.2.2-linux-x64 ./configure --prefix=/usr/local/node/4.2.2 make make install
设置NODE_HOME,进入profile编辑环境变量:
vim /etc/profile
设置nodejs环境变量,在export PATH USER LOGNAME MAIL HOSTNAME HISTSIZE HISTCONTROL 一行的上面增加以下内容:
#set for nodejs export NODE_HOME=/usr/local/node/4.2.2 export PATH=$NODE_HOME/bin:$PATH
:wq保留并退出,编译/etc/profile 使设置见效
source /etc/profile
npm模块装置途径
/usr/local/node/4.2.2/lib/node_modules/
官网彷佛有教程,以官网的为准
测试
假如装置胜利的话实行敕令看看版本: node -v
和 npm -v
假如显现以上信息,那末祝贺你,装置胜利了…
装置 Nginx
装置 Nginx 也异常简朴,巨大的ubuntu为我们省了不少事儿啊…
Ubuntu装置nginx
不多说了一条敕令完事:
sudo apt-get install nginx
几乎简朴到让人无语,固然假如运用的不是Ubuntu体系而是CentOS的话能够参考下面的装置体式格局。
CentOS装置nginx
CentOS 能够运用yum装置,也是一条敕令,异常简朴:
sudo yum install nginx
假如yum源也有的话能够把它加进去:
在/etc/yum.repos.d/
目次下建立一个源设置文件nginx.repo
:
cd /etc/yum.repos.d/
vim nginx.repo
填写以下内容:
[nginx]
name=nginx repo
baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
gpgcheck=0
enabled=1
保留,则会发生一个/etc/yum.repos.d/nginx.repo文件。
然后直接实行以下指令即可自动装置好Nginx:
yum install nginx -y
测试
nginx -v
假如显现了版本信息就示意装置胜利了
装置Ghost
前面说了辣么多的空话,终究要最先装置我们的主角Ghost啦
下载并解压Ghost
假如不相识的话能够上岸ghost.org官网举行相干的相识
官网的装置配制教程: Basic nginx config
cd /var/www
mkdir ghost
cd ghost/
sudo wget https://ghost.org/zip/ghost-0.7.1.zip
unzip ghost-0.7.1.zip
解压完后我们会看到以下目次及文件:
这里我们能够挑选装置某个形式,有异常多翻开config.example.js
文件看看,先别急着实行敕令。
这里有许多种形式,开辟形式,临盆形式,测试形式等等,默许运用的是sqlite数据库,这个不须要装置。假如不喜好sqlite想运用mysql的话能够把这个配制修正一下:
production: {
url: 'http://you-blog.me',
mail: {},
database: {
client: 'mysql',
connection: {
host : 'you mysql ip', // 我的mysql不在本机上,所以这里不就讲怎样装置mysql啦
user : 'user',
password : 'password',
database : 'ghost',
charset : 'utf8'
}
},
server: {
host: '127.0.0.1',
port: '2366' // 不要重了
}
},
下图公供参考
注重,假如你这服务器要装置多个ghost的话,端口肯定不能重
好了,我们不论开辟,不论测试,直接运用临盆形式吧。。。(咱就是这么自信,嘿嘿)
实行以下敕令:
sudo npm install --production
假如没报错的话应当就装置胜利了,先别急着运转,我们得先经由过程nginx把接见给转发过来,不然就只能经由过程ip加端口举行接见了…
配制nginx
前面已装置好了nginx 如今我们须要把经由过程域名接见经由过程nginx转发给node
我们新建一个配制(假如对nginx配制有兴致的话在下面留言我能够再写一篇,怎样说昔时这配制也研讨了良久呢…)
$ sudo vim /etc/nginx/sites-available/dudulu.conf
输入以下代码:
server {
listen 80;
server_name you-blog.me;
root /var/www/ghost;
location / {
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header Host $http_host;
proxy_pass http://127.0.0.1:2366; # 注重端口不要重了
}
}
下图是我的配制 公供参考…
配制完后实行敕令:
sudo service nginx restart
从新启nginx
ps: /etc/nginx/sites-enabled
这个目次假如没的话,本身设置一下软链接…
启动Ghost
都到这一步了,统统看起来都是辣么的顺遂,是时刻启动了…
见证奇观是时刻到啦,输入奇异的敕令启动:
sudo npm start --production // 这个是启动方才所配制过的mysql的临盆环境
假如没报错的话,应当就算是完成了,我们经由过程你的域名接见一下尝尝。
这里要重点注重了:
肯定不要让你的ssh衔接断啦,不然ghost就住手了哈,要怎样让ghost历久运转呢…有很多的计划,细致的请看下面…
让 Ghost 一向运转
前面提到的启动 Ghost 运用
sudo npm start --production
敕令。这是一个在开辟形式下启动和测试的不错的挑选,然则经由过程这类敕令行启动的体式格局有个瑕玷,即当你封闭终端窗口或许从 SSH 断开衔接时,Ghost 就住手了。为了防备 Ghost 住手工作,我们得处理这个题目。
Forever
装置 Forever 扩大 Forever
你能够运用 forever 以背景使命运转 Ghost 。forever 将会根据 Ghost 的设置,当历程 crash 后重启 Ghost。
装置 Forever
实行敕令:
sudo npm install forever -g
为了让 forever 从 Ghost 装置目次运转,输入以下敕令:
sudo NODE_ENV=production forever start index.js
这个时刻应当已启动好了,我们能够封闭ssh尝尝,依然是能够接见中的…
住手 Ghost
sudo forever stop index.js
搜检 Ghost 当前的运转状况:
sudo forever list
初始化剧本
Linux 体系在启动的时刻会运转初始化剧本。这些剧本一般存在于 /etc/init.d 。为了让 Ghost 一向运转下去以至自动重启,你能够设置一个初始化剧原本完成这个使命。
运用以下敕令建立
/etc/init.d/ghost
文件:sudo curl https://raw.githubusercontent.com/TryGhost/Ghost-Config/master/init.d/ghost -o /etc/init.d/ghost
运用
sudo nano /etc/init.d/ghost
敕令翻开文件并搜检以下内容:将
GHOST_ROOT
变量的值更换为你的 Ghost 装置途径搜检
DAEMON
变量的值是不是和 which node 的输出值雷同这个初始化剧本将在你的体系上以它本身的 Ghost 用户和用户组运转,运用以下敕令来建立:
sudo useradd -r ghost -U
确保 Ghost 用户能够接见装置目次:
sudo chown -R ghost.ghost /var/www/ghost
运用以下敕令给这个初始化剧本加上可实行权限:
sudo chmod 755 /etc/init.d/ghost
运用以下的敕令来掌握 Ghost:
sudo service ghost start sudo service ghost stop sudo service ghost restart sudo service ghost status
为了让 Ghost 能在体系启动时同时启动,我们必须要将方才建立的初始化剧本注册为为启动项。 实行以下两个敕令:
sudo update-rc.d ghost defaults sudo update-rc.d ghost enable
初始化Ghost
我们输入本身的域名进入博客,固然我们须要初始化背景
输入: http://you-blog.me/ghost
举行背景,这时候应变是没有初始化的,须要你举行一次初始化设置。根据它的提醒一步一下往下走就是了,异常简朴,设置完后我们就可以够上岸背景了。请肯定要记着本身所设置的用户名及暗码、请肯定要记着本身所设置的用户名及暗码、请肯定要记着本身所设置的用户名及暗码 主要的话肯定要说三遍。
输入本身的用户名暗码上岸…
嗯,也许长这个样纸:
关于它的运用,今后有时间我再写几篇文章吧,近来我也还在研讨…
装置themes
实在 Ghost 默许的主题也是很不错的,我也挺喜好的,比我本身的这个博客悦目多了…但如许就可以满足我吗?显现不可能,然后我又找了大批异常悦目的主题,那要怎样装置呢?
下载主题包
利用好巨大的Google搜刮东西吧,我也找了一些 嗯… GitHub 上也有很多
拿一个演示一下吧…
Ghost 的主题包放在 项目/content/themes
这个目次下,所以我们进入到这个目次,然后下载主题包:
cd /var/www/ghost/centent/themes/
sudo wget https://github.com/DanielTamkin/evergreen/archive/master.zip
sudo unzip master
sudo mv evergreen-master evergreen
sudo chown -R ghost:ghost ./
好了主题包已下载完成了,然后我们重启一下 Ghost,还记得上面我们说过的敕令吗?
sudo service ghost restart
重启动完Ghost 我们回到浏览器,进入设置页面:
http://you-blog.me/ghost/settings/general/
找到 Theme
项,以下图:
挑选系不系多了一个模版选项,我们就用它吧…
设置完后我们点击 VIEW BLOG
去看看…
不要注重上面的东西,这是给朋侪搭建的一个博客,也不要去接见,我只是拿来测试
看到没?变了耶…好玩吧…
末了再多说一句: Ghost 带的Markdown编辑器真的很好用…
拿铁味的摩卡,运用Ghost搭建个人博客
更多请接见我的个人博客:LatteCake