Respbian 安装 NodeJs 并搭建 Ghost

Respbian 安装 NodeJs 并搭建 Ghost

最近准备开始写日记,可是又不知道用什么样的程序好,Wordpress用的都想吐了,hexo等又不习惯,于是盯上了我一直很青睐的Ghost,刚好树莓派还在那一直挂着,不如拿来利用一下 😎
PS:如果你的脸不是太黑的话,顺着敲代码肯定能搭建出来的

环境:Debian8
设备:树莓派3B

安装NodeJs

来自:Weic`s Blog

切换到root账户
su root

卸载自带Node
apt-get remove nodejs nodered

卸载完后可能会提示还有不需要的包,需要输入下面命令卸载
apt-get autoremove

卸载完查下看能不能输出Node版本信息
node -v

如果没有输出版本信息就说明卸载完了,下面我们安装我们自己的Node
首先定一个安装位置,我们这里以 /usr 目录为例
cd /usr

下载编译好的Node
wget https://npm.taobao.org/dist/v4.6.2/node-v4.6.2-linux-armv6l.tar.gz

链接node和npm
ln -s /usr/node-v4.6.2-linux-armv6l/bin/node /usr/local/bin/node
ln -s /usr/node-v4.6.2-linux-armv6l/bin/npm /usr/local/bin/npm

现在查看node和npm版本
node -v && npm -v

如果有输出版本信息则表示安装完成,如下图:

更改npm源
如果你的服务器是在国外,请忽略此步骤;但如果服务器在国内的话想都不用想继续往下看:
npm install -g cnpm --registry=https://registry.npm.taobao.org
ln -s /usr/node-4.6.2/bin/cnpm /usr/local/bin/cnpm

安装lamp

安装Nginx
apt-get install nginx

安装mysql,php,phpmyadmin <–如果你要用mysql而不是sqlite的话
apt-get install mysql-server php5 php5-mysql phpmyadmin
链接phpmyadmin
ln -s /usr/share/phpmyadmin /var/www/html/phpmyadmin
给网站目录权限
chmod -R 777 /var/www/html
重启服务
php5enmod mcrypt
service php5-fpm restart

安装Ghost

进入home目录
cd /home
新建一个文件夹
mkdir ghost
下载最新版本的ghost
wget https://ghost.org/zip/ghost-latest.zip
解压文件
unzip -d ghost ghost-latest.zip
进入安装目录
cd ghost/
进行安装
npm install --production

配置ghost

复制config.example.js 并命名为config.js

cp config.example.js config.js

按照以下说明进行修改

vi config.js

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
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: {},
          database: {
              client: 'mysql',
              connection: {
                  host     : '127.0.0.1',
                  user     : 'root',
                  password : '',
                  database : 'ghost',
                  charset  : 'utf8'
              }
          },
          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'
  }
},(...)

然后

后台运行

emmm…可以用PM2之类的软件,不过我还是喜欢新建一个screen窗口,看个人喜好吧

使用PM2让Ghost永远在线
首先进到ghost的安装目录,之后安装PM2
npm install pm2 -g
链接PM2 ln -s /usr/node-v4.6.2-linux-armv6l/bin/pm2 /usr/bin
让ghost以production模式运作,指定程序的入口index.js,并且此进程命名为ghost
NODE_ENV=production pm2 start index.js --name "ghost"
开机启动
pm2 startup
pm2 save

署名 - 非商业性使用 - 禁止演绎 4.0