how-to-install-and-configure-ghost-on-ubuntu-16-04
_このチュートリアルの以前のバージョンはhttps://www.digitalocean.com/community/users/kevinisaac70[Kevin Isaac] _によって作成されました
前書き
Ghostは、軽量のオープンソースのブログプラットフォームです。 Ghostは完全にカスタマイズ可能で、多くのテーマが利用可能です。
このチュートリアルでは、公式の「+ ghost-cli +」インストールウィザードを使用して、Ubuntu 16.04に本番対応のGhostインスタンスをセットアップします。 これにより、Ghostがインストールされ、NginxがGhostへのリクエストをプロキシするように設定され、https://letsencrypt.org/ [Let’s Encrypt]証明書で保護され、システムサービスとしてバックグラウンドで実行されるようにGhostが設定されます。
前提条件
このチュートリアルを完了するには、次のものが必要です。
-
Ubuntu 16.04初期サーバーセットアップガイドに従ってsudo non -rootユーザーとファイアウォール。
-
Ubuntu 16.04にNginxをインストールする方法に示すように、サーバーにインストールされたNginx。
-
Ubuntu 16.04にMySQLをインストールする方法に従ってインストールされたMySQL。
-
オプションで、サーバーを指すように構成されたドメイン名。 https://www.digitalocean.com/community/tutorials/how-to-set-up-a-host-name-with-digitalocean [設定方法ホスト名とDigitalOcean]チュートリアル。 これは、Ghostのインストールウィザードを使用して暗号化してSSLサポートを有効にするために必要です。
手順1-Ghost CLIアプリケーションのインストール
公式の `+ ghost-cli +`プログラムを使用してGhostをインストールします。 このプログラムはGhostをインストールし、MySQLユーザーとデータベースを作成し、Nginxをリバースプロキシとして構成し、SSL / TLS暗号化を使用してサイトを保護します。
まず、 + npm`を使用して
+ ghost-cli`をダウンロードします。
sudo npm i -g ghost-cli
Ghostは、推奨されるインストール場所である `+ var / www / ghost +`ディレクトリに配置します。 このディレクトリを作成します。
mkdir /var/www/ghost
次に、ユーザーがこのディレクトリを所有していることを確認します。
sudo chown $USER:$USER /var/www/ghost
`+ / var / www / ghost +`ディレクトリには、ユーザーに対する完全なアクセス許可と、他のすべてのユーザーに対する読み取りおよび実行のアクセス許可が必要であるため、次のコマンドでアクセス許可を設定します。
sudo chmod 775 /var/www/ghost
CLIをインストールし、ディレクトリを配置したら、ブログをセットアップできます。
手順2-Ghostのインストールと構成
Ghost CLIアプリには、作業用のGhostブログを設定するためのすべての手順を案内するインストールウィザードがあります。
`+ / var / www / ghost / +`ディレクトリに切り替えます。
cd /var/www/ghost/
次に、「+ ghost +」コマンドを使用してGhostをインストールします。 MySQLをデフォルトのデータベースとして使用するようにGhostを構成します。 他のデータベースを使用することもできますが、実稼働セットアップにはMySQLが推奨される選択肢です。
ghost install
インストーラーはまず、必要な前提条件がインストールされていることを確認してから、Ghostをダウンロードしてインストールします。
Output✔ Checking system Node.js version
✔ Checking logged in user
✔ Checking current folder permissions
✔ Checking operating system compatibility
✔ Checking for a MySQL installation
✔ Checking memory availability
✔ Checking for latest Ghost version
✔ Setting up install directory
✔ Downloading and installing Ghost v1.22.2
✔ Finishing install process
インストールプロセスが完了すると、MySQLデータベース情報とともにブログのURLの入力を求められます。 このステップで* root *ユーザー名とパスワードを入力します。 データベース名には、デフォルトの `+ ghost_prod +`を使用できます。
Output? Enter your blog URL:
? Enter your MySQL hostname:
? Enter your MySQL username:
? Enter your MySQL password: [hidden]
? Enter your Ghost database name:
次に、構成ウィザードは* ghost システムユーザーを作成し、 ghost * MySQLユーザーを作成するかどうかを尋ねます。これは許可する必要があります。
Output✔ Configuring Ghost
✔ Setting up instance
Running sudo command: useradd --system --user-group ghost
Running sudo command: chown -R ghost:ghost /var/www/ghost/content
✔ Setting up "ghost" system user
? Do you wish to set up "ghost" mysql user?
✔ Setting up "ghost" mysql user
次に、Nginxを構成するかどうかを尋ねられます。 これを確認すると、インストーラーがブログに適切なリバースプロキシサーバーブロックを作成します。
Output? Do you wish to set up Nginx? Yes
✔ Creating nginx config file at /var/www/ghost/system/files/example.con.conf
Running sudo command: ln -sf /var/www/ghost/system/files/example.com.conf /etc/nginx/sites-available/example.com.conf
Running sudo command: ln -sf /etc/nginx/sites-available/example.com.conf /etc/nginx/sites-enabled/example.com.conf
Running sudo command: nginx -s reload
✔ Setting up Nginx
次に、SSLサポートを設定するよう求められます。 登録済みの完全修飾ドメイン名を使用しており、サーバーのIPアドレスを指すようにDNS設定を構成している場合は、「+ Y +」を押して続行します。
Output? Do you wish to set up SSL?
メールアドレスの入力を求められ、証明書がインストールされます。
Output? Enter your email (used for Let's Encrypt notifications)
Running sudo command: mkdir -p /etc/letsencrypt
Running sudo command: ./acme.sh --install --home /etc/letsencrypt
Running sudo command: /etc/letsencrypt/acme.sh --issue --home /etc/letsencrypt --domain --webroot /var/www/ghost/system/nginx-root --reloadcmd "nginx -s reload" --accountemail
Running sudo command: openssl dhparam -out /etc/nginx/snippets/dhparam.pem 2048
Running sudo command: openssl dhparam -out /etc/nginx/snippets/dhparam.pem 2048
Running sudo command: mv /tmp/ssl-params.conf /etc/nginx/snippets/ssl-params.conf
✔ Creating ssl config file at /var/www/ghost/system/files/-ssl.conf
Running sudo command: ln -sf /var/www/ghost/system/files/-ssl.conf /etc/nginx/sites-available/-ssl.conf
Running sudo command: ln -sf /etc/nginx/sites-available/-ssl.conf /etc/nginx/sites-enabled/-ssl.conf
Running sudo command: nginx -s reload
✔ Setting up SSL
次に、構成ウィザードはsystemdサービスをセットアップするように求めます。 「+ Y 」を押して続行すると、ウィザードは「 ghost_ +」と呼ばれる新しいsystemdサービスを作成し、ブート時に起動できるようにします。
Output? Do you wish to set up Systemd?
✔ Creating systemd service file at /var/www/ghost/system/files/ghost_.service
Running sudo command: ln -sf /var/www/ghost/system/files/ghost_.service /lib/systemd/system/ghost_.service
Running sudo command: systemctl daemon-reload
✔ Setting up Systemd
最後に、ウィザードはデータベースを設定し、Ghostを起動するかどうかを尋ねます。Ghostを起動するには、「+ Y +」を押して許可する必要があります。
OutputRunning sudo command: /var/www/ghost/current/node_modules/.bin/knex-migrator-migrate --init --mgpath /var/www/ghost/current
✔ Running database migrations
? Do you want to start Ghost?
Running sudo command: systemctl is-active
✔ Ensuring user is not logged in as ghost user
✔ Checking if logged in user is directory owner
✔ Checking current folder permissions
Running sudo command: systemctl is-active ghost_
✔ Validating config
✔ Checking folder permissions
✔ Checking file permissions
✔ Checking content folder ownership
✔ Checking memory availability
Running sudo command: systemctl start ghost_
✔ Starting Ghost
Running sudo command: systemctl is-enabled
Running sudo command: systemctl enable --quiet
✔ Starting Ghost
これで、Ghostブログがインストールされ、使用できる状態になりました。 ブログには「+ http:// +」でアクセスできます。 では、最初の投稿を作成できるようにアカウントを作成しましょう。
ステップ3-アカウントの作成とブログの構成
ブログにログインして設定するには、 `+ http:/// login`にアクセスしてください。 次の画面が表示されます。
image:https://assets.digitalocean.com/articles/ghost_1604/fJDd8Yw.png [ようこそ画面]
[アカウントを作成]ボタンを押して開始します。
[アカウントを作成]画面が表示されます。この画面では、ブログのタイトル、名前、メールアドレス、パスワードを尋ねられます。
image:https://assets.digitalocean.com/articles/ghost_1604/ZoO4B8Y.png [アカウント画面の作成]
詳細を入力し、*最後のステップ:チームを招待する*ボタンを押します。
ウィザードでは、他の共同編集者のメールアドレスを入力するよう求められますが、画面の下部にある[*後で行う]リンクを選択できます。
次に、Ghostがストーリーと呼ぶ投稿のリストが表示されます。
image:https://assets.digitalocean.com/articles/ghost_1604/PBnxfaX.png [ストーリーのリスト]
左側のメニューでは、新しいストーリーを作成したり、ブログの他の設定を管理したりできます。 詳細については、https://docs.ghost.org/docs [公式ドキュメント]を参照してください。
結論
このチュートリアルでは、Ghostをインストールし、NginxをGhostにリクエストをプロキシするように設定し、Ghostがシステムサービスとして実行されるようにしました。 ただし、Ghostでできることは他にもたくさんあります。 新しいブログの使用方法の詳細については、これらのチュートリアルをご覧ください。