/ Getting Started

部署Ghost小记

  准备工作:根据自己的需要安装好MySQL、Nginx。默认情况,Ghost开发模式下的默认数据库是SQLite,生产环境下(production)是MySQL。Nginx作为Web前端服务器进行请求转发,即反向代理Nodejs应用。当然,也可以直接使用应用响应服务。但应用好比就是厨师,他可以炒菜,也可以招待客户,还可以上菜。但这个仅限与客户量少的时候,如果生意非常之好,那么我们就需要请出Nginx这个美少女,端茶倒水(接收请求)、派单(转发请求)、上菜(响应请求)服务一流。Nodejs也是需要提前安装的 。这里选择使用PM2 管理应用,需要全局安装。
  下载打包后的Github的Ghost源代码 ,不建议直接克隆Ghost项目 至本地安装,除非用于开发,因为构建时非常容易失败。建议生产环境用稳定版本。
下载并配置:

cd /data/htdocs/dev.idoseek.com/ && \
wget https://github.com/TryGhost/Ghost/releases/download/1.22.7/Ghost-1.22.7.zip && \
unzip Ghost-1.22.7.zip && \
\rm Ghost-1.22.7.zip && \
cd /data/htdocs/dev.idoseek.com/core/server/config/env

修改配置数据库和邮件信息。当然如果不需要发送邮件,可以忽略。
修改config.production.json如下

"url": "http://dev.idoseek.com",
"database": {
    "client": "mysql",
    "connection": {
        "host": "127.0.0.1",
        "user": "root",
        "password": "mysqlUserPassword",
        "database": "gblog"
    }
},
"mail": {
    "from": "user@idoseek.com",
    "transport": "SMTP",
    "options": {
        "service": "QQex",
        "auth": {
            "user": "user@idoseek.com",
            "pass": "password"
        }
    }
},

并将config.production.json的“database”和“mail”修改至同目录下的config.development.json,这里的发送邮箱为腾讯企业邮箱。可以根据自己的需求使用Gmail或者其他邮箱。
初始化及构建安装、启动:

cd /data/htdocs/dev.idoseek.com/ && \
yarn global add knex-migrator grunt-cli ember-cli bower && \
yarn setup && \
NODE_ENV=production pm2 start index.js --name "blog"

部署完成。查看启动情况:

[root@idoseek dev.idoseek.com]# curl -I http://localhost:2368
HTTP/1.1 200 OK
X-Powered-By: Express
Cache-Control: public, max-age=0
Content-Type: text/html; charset=utf-8
Content-Length: 14405
ETag: W/"3845-oSRSxBNsXjyExZdGXj5tzu2d748"
Vary: Accept-Encoding
Date: Fri, 11 May 2018 02:35:54 GMT
Connection: keep-alive

配置nginx进行请求转发:

location /{
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header Host  $http_host;
    proxy_set_header X-Nginx-Proxy true;
    proxy_set_header Connection "";
    proxy_pass   http://localhost:2368/;
 }

参考资料

部署Ghost小记
Share this