Ghost
Ghost はフリーでオープンソースのブログプラットフォームです。JavaScript で書かれており MIT ライセンスで配布されています。個人のブロガーによるオンラインパブリッシングを簡単にするために作られました。
AUR インストール
ghostAUR をインストールして /srv/ghost/config.js
を編集してください。そして ghost.service
を起動します。気に入ったら、システムの起動時に自動的に実行されるように有効化してください。
最終的な設定は http://127.0.0.1:2368/ghost から行います。
カスタムインストール
要件
nginx をウェブサーバーとして Ghost をインストールする方法を説明します。
nginx, npm, sqlite, python2, base-devel, unzip, nodejs をインストールしてください。
インストール
ウェブサーバーがブログのプロキシとなるように設定します。nginx の設定ファイル (/etc/nginx/nginx.conf
) の server ブロックの、location を以下のように変更します:
location / { proxy_set_header X-Real-IP $remote_addr; proxy_set_header Host $http_host; proxy_pass http://127.0.0.1:2368; }
ghost 用に ghost ユーザーとディレクトリを作成してください:
$ useradd -r -s /bin/false ghost $ mkdir -p /srv/http/example.org
nginx.service
を起動します。
ghostAUR をインストールするか ghost.org から最新版の Ghost を取得して、手動でインストールしてディレクトリを移動してください:
$ curl -L https://ghost.org/zip/ghost-latest.zip $ unzip ghost-latest.zip -d /srv/http/example.org $ cd /srv/http/example.org
一時的に python のパスを python 3 から python 2 に変更します:
ダミーフォルダを作成:
$ mkdir ~/bin
python から python2 へのシンボリックリンクと設定スクリプトを追加してください:
$ ln -s /usr/bin/python2 ~/bin/python $ ln -s /usr/bin/python2-config ~/bin/python-config
最後に PATH 変数の最初に新しいフォルダを記述します:
$ export PATH=~/bin:$PATH
Ghost をインストールします。Arch User Repository から Ghost をインストールした場合は必要ありません:
$ npm install --production
Ghost を起動:
$ npm start --production
完了です。ブラウザを起動して 127.0.0.1 または Ghost をインストールしたデバイスの IP を開いて下さい。
サービスの作成
Ghost をバックグラウンドで実行したい場合、サービスを作成する必要があります。ローカルシステム用に新しいサービスユニットを作成してください:
/etc/systemd/system/ghost-example-com.service
[Unit] Description=Ghost blog example.org After=network.target [Service] Type=simple PIDFile=/run/ghost-example-org.pid WorkingDirectory=/srv/http/example.org User=ghost Group=ghost ExecStart=/usr/bin/npm start --production /srv/http/example.org ExecStop=/usr/bin/npm stop /srv/http/example.org StandardOutput=null StandardError=null [Install] WantedBy=multi-user.target
ブログディレクトリの所有者を変更して Ghost を起動:
$ chown -R ghost:ghost /srv/http/example.org $ systemctl start ghost-example-com
全てが問題ないようでしたら、新しいユニット ghost-example-com
とウェブサーバー nginx.service
を有効化します。