すっかり更新もせず、ただのネタドメインのサイトと化しておりました。
案の定Ghost自体も更新せず、ずっとv0.7.1あたりを使っておりましたので、今回は最新版をインストールしたいとおもいます。
※Exportで記事を移行しました。
設置先のさくらのVPSをリプレースしたかったので、適当にNode.jsをホスティングしてくれてるところないかなーとおもっていた所(そんな事を思って既に3ヶ月程度経過してますが・・・w)
ゲヒルン、さくらインターネットと協力して、インフラストラクチャサービス「Gehirn Web Services」をリニューアル
を見かけたので、覗いてみたところ
- SSL/TLS・HTTP/2
- Node.js v8.x(LTS)
- Nginx詳細設定
が可能という事で、リニューアルクーポンを登録して早速利用してみました。
Install Ghost
基本的な使い方はある程度わかるという前提で進めますね。
- Install ghost-cli
$ npm install -g ghost-cli@latest
-
データベースを用意しておきます。
今回MySQLを使ってるので、コントロールパネルよりデータベースを作成しておきましょう。 -
Install Ghost
$ mkdir /var/www/ana.coppo.la
$ cd /var/www/ana.coppo.la
$ ghost install --no-setup-linux-user --no-setup-systemd --no-setup-nginx --no-setup-ssl --no-start
root権限は提供されていないので、--no-setup-linux-user --no-setup-systemd
で設定をスキップします。
また、Nginxの設定も後述で残しておきますので、--no-setup-nginx --no-setup-ssl
で設定をスキップしてください。
起動は後でさせるので、--no-start
で起動しないように設定。
? Enter your blog URL: https://ana.coppo.la
? Enter your MySQL hostname: localhost
? Enter your MySQL username: *username*
? Enter your MySQL password: [hidden]
? Enter your Ghost database name: *database_name*
上記の様な感じで、設定してください。
SSL証明書を持ち込むので、blog URLはhttpsになってます。
- Nginxの設定
バックエンドをNginxにして、アドバンスモードを使用します。
server {
listen 80;
listen [::]:80;
server_name ana.coppo.la;
root /var/www/ana.coppo.la/;
access_log /var/log/sites/ana.coppo.la/access.nginx.log;
error_log /var/log/sites/ana.coppo.la/error.nginx.log error;
location / {
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header Host $http_host;
proxy_pass http://127.0.0.1:2369;
}
client_max_body_size 50m;
}
さくらのレンタルサーバのSNI SSLと同様に、HTTPS通信はProxyで動作する為、X-Forwarded-Forを設定します。
X-Forwarded-Protoも設定するとループしてしまうので注意。
※ポートはGhostインストール時に設定されるポートを入力して下さい。
-
SSL証明書の設定
SSL証明書が用意ある場合は、先ほどのNginxのサイトを編集画面にてサーバ証明書からそれぞれの証明書を設定してください。 -
SSL証明書の設定が完了したら、セキュリティ設定より『Strict-Transport-Security』を有効にすれば、HTTPS接続になります。
Install pm2
root権限がなく、systemdを使えないので、pm2で永続化します。
ghostという名前で登録して、
自動起動させるように設定します。
$ npm install pm2 -g
$ cd /var/www/ana.coppo.la
$ NODE_ENV=production pm2 start /var/www/ana.coppo.la/current/index.js --name "ghost"
$ pm2 startup ghost
$ pm2 save
これで、Gehirn RS2 PlusでもGhostを動かせるようになりました。
おしまい。