海外サーバーvultr

Ubuntu 14.04でゴーストとNginxリバースプロキシ

Ghostnode.jsで書かれたフリーでオープンソースのブログプラットフォームで、完全にカスタマイズ可能で出版専用です。

サーバーを準備します。パッケージの更新、Node.jsとNPMのインストール

rootようにサーバーにログインしてインストールをデモンストレーションしますので、sudo各コマンドの前に追加する必要はありません。他のユーザーとしてログインしている場合は、必要になることを忘れないでくださいsudo

サーバー上で次のコマンドを実行してパッケージインデックスを更新し、パッケージをアップグレードして、andをインストールnodejsnpmます。

apt-get update
apt-get upgrade

apt-get install python software-properties-common gcc g++ make -y  # auto install
add-apt-repository ppa:chris-lea/node.js -y

これらのコマンドからの出力は、次のようになります。

gpg: keyring `/tmp/tmpvpe2ugzj/secring.gpg' created
gpg: keyring `/tmp/tmpvpe2ugzj/pubring.gpg' created
gpg: requesting key C7917B12 from hkp server keyserver.ubuntu.com
gpg: /tmp/tmpvpe2ugzj/trustdb.gpg: trustdb created
gpg: key C7917B12: public key "Launchpad chrislea" imported
gpg: Total number processed: 1
gpg:               imported: 1  (RSA: 1)
OK

自動的に、パッケージの署名キーがキーリングに追加され(ダウンロードされたパッケージを検証できるように)、PPAがAPTに追加されsources.list.dます。

それでは、実行しましょう。

apt-get update  # again 
apt-get install nodejs -y

npmインストールをテストするために実行します。あなたは、表示されるnpm画面に印刷の使用:

Usage: npm <command>
...
...
npm@1.4.28 /usr/lib/node_modules/npm

これでGhostをインストールできます。

インストール:ゴーストとNginx

Ghostは現在「安定している」と考えられているので、インストールすることができますnpm。次のコマンドでインストールしてください。

npm install -g ghost --production

今のところ警告は無視してください。

次に、Ghostを起動して、正しく機能しているかどうかを確認します。

cd /usr/lib/node_modules/ghost
npm start --production

出力は次のようになります。

> ghost@0.5.2 start /usr/lib/node_modules/ghost
> node index

Migrations: Database initialisation required for version 003
...
Migrations: Complete
Ghost is running... 
Your blog is now available on http://my-ghost-blog.com 
Ctrl+C to shut down

できます!使用はCtrl-Cをインストール(および構成)nginxの:ゴーストをシャットダウンし、次のステップに移動します。

Nginxはインストールがとても簡単です。次のコマンドを実行してください。

apt-get install nginx

Nginxはあなたのサーバーのポート80(SSLを使っているなら443)への野生のどこからの接続も許可するように設定され、それはそれからGhostに転送( ” プロキシ “)されます。これが、人々があなたのブログにつながる方法です。

Nginxの設定もそれほど難しいことではありません。Ghostプロキシを設定するには次の手順に従ってください。

まず、デフォルトの設定ファイルを削除します。

cd /etc/nginx/
rm sites-enabled/default

次に、新しい設定ファイルを作ります。

cd sites-available
touch ghost

次の行を必要に応じて調整して、のように貼り付けるnanovi、貼り付けserver_nameます(ドメイン名に設定する必要があります)。

server {
    listen 80;
    server_name yourdomain.tld;
    access_log /var/log/nginx/yourdomain.tld.log;  # if you want logging

    location / {
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header HOST $http_host;       
        proxy_pass http://127.0.0.1:2368;
        proxy_redirect off;
    }
}

設定ファイルをシンボリックリンクします。

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

Nginxを再起動します。

service nginx restart

この時点で、Nginxはサーバーにインストールされ、構成され、そして稼働しています。

最後に:Ghostを自動的に起動する

Supervisorは、initスクリプトを使わずにGhostを起動時に実行できるようにするプロセス制御システムです。Ghostを管理するためにSupervisorをインストールします。

Supervisorをインストールするには、次のコマンドを実行してください。

apt-get install supervisor
service supervisor start

次に、で新しいスクリプトファイルを作成します/etc/supervisor/conf.d/ghost.conf。これらの内容を貼り付けます。

[program:ghost]
command = node /usr/lib/node_modules/ghost/index.js
directory = /usr/lib/node_modules/ghost
user = ghost
autostart = true
autorestart = true
stdout_logfile = /var/log/supervisor/ghost.log
stderr_logfile = /var/log/supervisor/ghost_err.log
environment = NODE_ENV="production"

ファイルを保存して閉じます。

次に、Ghost用のユーザーを作成し、Ghostファイルとデータベースにアクセスするためのアクセス許可を付与する必要があります。以下のコマンドを実行してください。

useradd ghost
chown -R ghost /usr/lib/node_modules/ghost/
supervisorctl reread
supervisorctl update

これでセットアップは完了です。

これでsupervisorctl start ghostand を実行してGhostを制御できますsupervisorctl stop ghost