如何搭建一个Ghost平台的博客

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何搭建一个Ghost平台的博客相关的知识,希望对你有一定的参考价值。

参考技术A

  搭建一个Ghost平台的博客的方法

    选择一个VPS。目前市面上的VPS非常多,大家可以自行选择。但是标题既然说了是免费搭建一个ghost博客,于是我们选择了nitros.io。它是一个功能强大的在线编程平台,支持托管多种语言编写的web应用,并且为每个账户提供了一个免费的plan。点击链接,注册一个nitros.io的账号。

    注册完账号之后。点击右上角导航栏中的Boxes。点击New Box

    点击node.js图标,这时Node.js图标会由灰色变为绿色

    下面的部分要你填写Name,我填的是myblog。选择地区,选择East Asia。下面的三个条状物是内存和存储空间的分配,这时free plan里默认的,可以不用管。

    点击Create Box,出现如下画面:

    然后会自动跳转到IDE界面:

    IDE的下方就是一个shell界面,很酷,对吧!

    下载ghost包。我们使用wget,在下面的shell中输入以下命令行:

    wget https://en.ghost.org/zip/ghost-0.3.3.zip

    一连串自动输出之后,下载完成。新建一个叫blog的文件夹:

     mkdir blog

    把刚在下载的压缩文件移动到blog文件夹中:

    mv ghost-0.3.3.zip blog

    进入blog文件夹,解压缩文件:

    unzip ghost-0.3.3.zip  

    一串输出以后,解压完成。由于我们一开始选择的是Node.js开发环境,nitros.io已经为我们安装好了node以及npm,接下来,输入下面命令行:

    npm install --production  

    在此要特别注意,production前面是两个连字符(--)

    还是一连串输出:

    此时,ghost就已经安装好了,非常非常简单对吧。输入下面命令行:

    npm start    

    ghost已经运行起来了:

    我们看到ghost是默认运行在2368端口下的,点击IDE上面的Preview,发现没有2368端口的选项,没关系,随便点击一个比如Port 3000:

    出现以下界面:

    这很正常,看看地址栏就知道了:

    前面的地址就是应用的访问地址,记住这个地址,在后面配置文件中用得到,最好就不要关闭这个页面,待会直接复制粘贴。但是端口是3000,不是ghost默认的2368,很简单,把3000改成2368,再次访问:

    怎么回事,居然还是无法访问!我们好好看看,原来是host出了问题,下一步我们就来修改host。

    回到IDE的shell中,按ctrl-c结束进程,在IDE左边有一个文件列表,点击blog文件夹下面的config.js(注意不是config.example.js文件)文件,在文件列表右边的框中出现了config.js文件的内容,把光标移动进去就可以修改config.js的内容了。

    我们看到在config.js中默认的url如下所示:

    默认的host如下所示:

    还记得上面提到要记住的地址吗?现在把它复制下来,包括后面的2368,把config.js里面的所有url改成这个地址,

    把所有的host改成0.0.0.0,

    点击左上角的save完成修改。

    启动ghost。在此回到下方的shell,输入命令行:

    npm start  

    在地址栏中输入上面提到要记住的那个地址,回车,ghost出现了!

    发博文。在地址栏后面加入/ghost,进入管理界面:

    输入用户名,邮箱,密码,完成初始化用户的工作,进入后台管理界面:

    现在可以开始写博文了,点击上方导航栏中的New Post,开始写第一篇博客:

    ghost采用的是markdown语法,相信大家应该不陌生。点击右下角的小箭头,选择publish now:

    此时按钮编程红色,再次点击出现发布成功的提示。回到博客主页面,就能看到我们的第一篇博客发布成功了:

    ghost博客搭建成功!

参考技术B Step1 基础配置:
Ghost是依托于node.js的,所以要先搭建node环境。

sudo apt-get update
sudo apt-get install -y python-software-properties python g++ make
sudo add-apt-repository ppa:chris-lea/node.js
sudo apt-get update
sudo apt-get install nodejs

这些命令全部执行完毕以后,要确认是否配置成功。在终端输入:

node -v
v0.10.36

显示node的版本号,即为安装成功。

接下来再确认一下npm安装是否成功,终端输入:

npm -v

同样,输出版本号为安装成功。

Step2配置Ghost:
首先要新建一个工作空间(文件夹)来存放Ghost:

sudo mkdir -p /var/www/

下载Ghost:

进入刚才创建的工作空间

cd /var/www/

下载Ghost并解压

sudo wget https://ghost.org/zip/ghost-latest.zip
sudo unzip -d ghost ghost-latest.zip

(解压的时候可能会出错,是因为没有下载解压工具unzip,执行命令下载即可,然后重复解压命令。)

sudo apt-get install unzip

安装Ghost的生产模块:

cd ghost/
sudo npm install --production

现在我们已经安装完了,但是需要设置之后,才能启动它。

Ghost设置:

sudo cp config.example.js config.js

这句话的意思复制config.example.js 并命名为config.js,我们要对config.js这个文件进行修改:

sudo nano config.js

(这句话是用nano打开config.js,提示没有安装nano的话,输入以下命令安装,然后重复上一条命令:)

sudo apt-get install nano

打开以后,修改以下被标注的区域:

config =
// ### Production
// When running Ghost in the wild, use the production environment
// Configure your URL and mail settings here
production:
url: 'http://my-ghost-blog.com',
###将‘ ’内部的内容修改为你的解析后的域名,注意带上http
mail:
// Your mail settings
,
database:
client: 'sqlite3',
connection:
filename: path.join(__dirname, '/content/data/ghost.db')
,
debug: false
,

server:
// Host to be passed to node's `net.Server#listen()`
host: '127.0.0.1',
###将‘127.0.0.1’改为‘0.0.0.0’
// Port to be passed to node's `net.Server#listen()`, for iisnode s$
port: '2368'

,

(...)

然后CTRL + X再输入Y然后敲ENTER退出。

现在已经配置好了Ghost,输入:

sudo npm start --production

大概会显示:

> ghost@0.6.4 start /var/www/ghost
> node index

Migrations: Database initialisation required for version 003
Migrations: Creating tables...
Migrations: Creating table: posts

[...]

然后现在你就可以让你的Ghost使用2368这个端口:http://你的域名.com:2368就可以看到Ghost本尊。

CTRL + C可以结束掉正在开启的Ghost

但是这还不是结束!
接下来要让你的Ghost一直处于运行状态。

Step4 配置服务器程序:
在终端执行:

sudo apt-get install nginx

接下来需要对Nginx进行一些配置:

sudo apt-get install nginx
sudo rm sites-enabled/default
sudo touch /etc/nginx/sites-available/ghost
sudo nano /etc/nginx/sites-available/ghost

然后把这些代码粘贴进去:

server
listen 80;
server_name your_domain.tld;
###修该为你的域名
location /
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header Host $http_host;
proxy_pass http://127.0.0.1:2368;



然后建立一个链接,将你新建的配置告诉Nginx:

sudo ln -s /etc/nginx/sites-available/ghost /etc/nginx/sites-enabled/ghost

然后重启Nginx:

sudo service nginx restart

接下来创建一个新的用户,并给与他权限:

sudo adduser --shell /bin/bash --gecos 'Ghost application' ghost
sudo chown -R ghost:ghost /var/www/ghost/

然后用ghost用户使用系统:

su - ghost

现在我们要开启Ghost:

cd /var/www/ghost
npm start --production

然后你可以在浏览器输入你的域名来查看你的Ghost博客。

Step5 保持Ghost的运行:
我们得先退出ghost用户:

exit

接下来安装forever:

sudo npm install -g forever

然后执行:

NODE_ENV=production forever start index.js

接下来看一下forever是否挂在了index.js:

forever list

这个状态的话,你就可以开始你的Ghost之路了!这个状态的话,你就可以开始你的Ghost之路了!

结束进程命令:

forever index.js

以上是关于如何搭建一个Ghost平台的博客的主要内容,如果未能解决你的问题,请参考以下文章

在CentOS上搭建基于Nodejs的Ghost博客

如何在centos7上搭建ghost博客

在Azure中搭建Ghost博客并绑定自定义域名和HTTPS

如何在VPS中安装Ghost博客

CentOS使用docker ghost搭建自己的博客

Node.js的开源博客系统Ghost搭建教程