Linux Lite - Обзор, Установка, Настройка Lite OS 4.8 | Ubuntu 18.04 LTS + Xfce
目次:
- 前提条件
- Node.jsとYarnのインストール
- MySQLのインストール
- Ghost-CLIのインストール
- Ghostのインストール場所の作成
- Ghostのインストール
- ゴーストのセットアップを完了する
Ghostは、Node.jsプラットフォームの上に構築された最新のソース公開プラットフォームです。 完全にカスタマイズ可能で使いやすいため、学習曲線をほとんどゼロにしてコンテンツを公開できます。
このチュートリアルでは、プロキシとしてNginx、無料のLet's Encrypt SSL証明書、Node.jsの最新のLTSバージョン、データベースバックエンドとしてMySQL / MariaDBを使用して、Ubuntu 18.04サーバーに安全なGhostブログをデプロイする方法を示します。 。
前提条件
このチュートリアルに従うための前提条件として、次のものが必要になります。
- Ghostの公式システム要件によると、少なくとも1GのRAMが必要です。 RAMが1GB未満のサーバーがある場合は、スワップファイルを作成できます。パブリックサーバーIPを指すドメイン名。 このチュートリアルでは、Ubuntu 18.04でUFWを使用してファイアウォールをセットアップする方法に従って構成された方法でUbuntu 18.04にNginxをインストールする方法に従ってインストールされた
example.com
.Nginxを使用しexample.com
。 ポート80
と443
が開いていることを確認してください。
このチュートリアルを続ける前に、sudo特権を持つユーザーとしてログインしていることを確認してください。
Node.jsとYarnのインストール
この記事を書いている時点で、Ghostの推奨Node.jsバージョンはv8 carbon LTSです。 NodeSourceリポジトリからNode.jsをインストールします。
次のcurlコマンドを使用して、Node.js v8のNodeSourceリポジトリを有効にします。
curl -sL https://deb.nodesource.com/setup_8.x | sudo bash -
次を入力してNode.jsをインストールします。
sudo apt install nodejs
他のインストール方法については、「Ubuntu 18.04にNode.jsをインストールする方法」ガイドを参照してください。
yarnをインストールするには、最初に次のコマンドを使用してシステムのYarnリポジトリーを有効にします。
curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | sudo apt-key add -
curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | sudo apt-key add -
echo "deb https://dl.yarnpkg.com/debian/ stable main" | sudo tee /etc/apt/sources.list.d/yarn.list
echo "deb https://dl.yarnpkg.com/debian/ stable main" | sudo tee /etc/apt/sources.list.d/yarn.list
リポジトリが有効になったら、次を使用してyarnをインストールします。
sudo apt update
sudo apt-get -o Dpkg::Options::="--force-overwrite" install yarn
MySQLのインストール
Ghostは、MySQL、MariaDB、およびSQLiteデータベースをサポートしています。 このチュートリアルでは、本番モードでGhostを実行するときに推奨されるデータベースであるMySQLを使用します。
次のコマンドでMySQLパッケージをインストールします。
sudo apt install mysql-server
mysql_secure_installation
コマンドを実行して、MySQLインストールのセキュリティを改善します。
sudo mysql_secure_installation
MySQLユーザーのパスワードの強度をテストするために使用される
VALIDATE PASSWORD PLUGIN
を設定するよう求められます。 パスワード検証ポリシーには、低、中、強力の3つのレベルがあります。 パスワード検証プラグインを設定しない場合は、
ENTER
押し
ENTER
。
次のプロンプトで、MySQL rootユーザーのパスワードを設定するよう求められます。
rootパスワードを設定すると、スクリプトは匿名ユーザーの削除、rootユーザーによるローカルマシンへのアクセスの制限、テストデータベースの削除を要求します。 すべての質問に
Y
(はい)と回答する必要があります。
次に、認証方法を
auth_socket
から
auth_socket
に変更して、GhostインストーラーがMySQLサーバーにアクセスできるようにする必要があります。 これを行うには、rootユーザーとしてMySQLサーバーにログインします。
sudo mysql
mysql_native_password
メソッドを使用するときにMySQLルートユーザーにパスワードを設定する次のクエリを実行します。
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'very_strong_pasword';
FLUSH PRIVILEGES;
強力なパスワードを使用して、
very_strong_pasword
を必ず変更してください。
Ghost-CLIのインストール
公式のGhost CLIユーティリティを使用してGhostをインストールします。 このユーティリティを使用すると、1つのコマンドでGhostをインストールまたは更新できます。
Ghost CLIはnpmパッケージとして利用できます。 次のコマンドは、UbuntuシステムにGhost CLIをグローバルにインストールします。
sudo yarn global add ghost-cli
Ghostのインストール場所の作成
Ghostをダウンロードして、推奨インストール場所である
/var/www/ghost
ディレクトリにインストールします。
ディレクトリタイプを作成するには:
sudo mkdir -p /var/www/ghost
ディレクトリの所有権をユーザーに変更します。
sudo chown $USER:$USER /var/www/ghost
$USER
は、ユーザー名を保持する環境変数です。
正しいディレクトリ許可を設定します。
Ghostのインストール
Ghost CLIがインストールされ、すべての前提条件が満たされたので、インストールを開始できます。
/var/www/ghost
ディレクトリに移動します。
cd /var/www/ghost
インストールを開始
ghost install
、
ghost install
実行してGhostをインストールおよび構成し、Nginxをリバースプロキシとして構成し、無料のSSL証明書を暗号化してサイトを保護します。
ghost install
✔ Checking system Node.js version ✔ Checking logged in user ✔ Checking current folder permissions System checks failed with message: 'Linux version is not Ubuntu 16' Some features of Ghost-CLI may not work without additional configuration. For local installs we recommend using `ghost install local` instead. ? Continue anyway? (y/N) y
インストーラーはシステムをチェックし、上記のようにいくつかの警告を出力します。
y
と入力して続行すると、インストーラーはGhostをダウンロードしてインストールします。
ℹ 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.24.9 ✔ Finishing install process
次に、ブログのURLとMySQL情報を設定するよう求められます。
Installing MySQL
の
Installing MySQL
セクションでセットアップしたルートユーザー名とパスワードを指定し、デフォルトのデータベース名
ghost_prod
を使用します。
? Enter your blog URL: https://example.com ? Enter your MySQL hostname: localhost ? Enter your MySQL username: root ? Enter your MySQL password: ? Enter your Ghost database name: ghost_prod
インストーラーは、
ghost
という名前のシステムユーザーを作成し、ゴーストMySQLユーザーを作成するかどうかを尋ねるメッセージを表示し、
Yes
ます。
✔ Configuring Ghost ✔ Setting up instance 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? Yes ✔ Setting up "ghost" mysql user
次に、インストーラーは、Nginxをセットアップするかどうかを尋ねます。
Yes
入力して確認します。
? Do you wish to set up Nginx? Yes ✔ Creating nginx config file at /var/www/ghost/system/files/example.com.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
Nginxがセットアップされると、インストーラーはSSLをセットアップするかどうかを尋ねます。 [
Yes
を入力して確認すると、構成ウィザードが電子メールアドレスの入力を求め、ドメインの無料のLet's Encrypt SSL証明書を生成してNginxを構成します。
? Do you wish to set up SSL? Yes ? Enter your email (used for Let's Encrypt notifications) [email protected] 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 example.com --webroot /var/www/ghost/system/nginx-root --reloadcmd "nginx -s reload" --accountemail [email protected] 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/example.com-ssl.conf Running sudo command: ln -sf /var/www/ghost/system/files/example.com-ssl.conf /etc/nginx/sites-available/example.com-ssl.conf Running sudo command: ln -sf /etc/nginx/sites-available/example.com-ssl.conf /etc/nginx/sites-enabled/example.com-ssl.conf Running sudo command: nginx -s reload ✔ Setting up SSL
次に、インストーラーはsystemdサービスをセットアップするかどうかを尋ねます。
Y
を入力して受け入れると、インストーラーはghost_example-comと呼ばれる新しいsystemdサービスを作成し、ブート時に開始できるようにします。
? Do you wish to set up Systemd? Yes ✔ Creating systemd service file at /var/www/ghost/system/files/ghost_example-com.service Running sudo command: ln -sf /var/www/ghost/system/files/ghost_example-com.service /lib/systemd/system/ghost_example-com.service Running sudo command: systemctl daemon-reload ✔ Setting up Systemd
最後に、インストーラーがデータベースをセットアップし、Ghostを起動するかどうかを尋ねるメッセージを表示して、
Yes
ます。
Running 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? Yes Running sudo command: systemctl is-active ghost_example-com ✔ 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_example-com ✔ Validating config ✔ Checking folder permissions ✔ Checking file permissions ✔ Checking content folder ownership ✔ Checking memory availability Running sudo command: systemctl start ghost_example-com ✔ Starting Ghost Running sudo command: systemctl is-enabled ghost_example-com Running sudo command: systemctl enable ghost_example-com --quiet ✔ Starting Ghost You can access your publication at https://example.com Next, go to your admin interface at https://example.com/ghost/ to complete the setup of your publication Ghost uses direct mail by default To set up an alternative email method read our docs at
ゴーストのセットアップを完了する
ブラウザを開き、Ghost管理インターフェイス
https://example.com/ghost/
と、次の画面が表示されます。
ここから、新しい投稿を作成したり、ユーザーを追加したり、Ghosts設定を変更したりできます。
結論
このチュートリアルでは、本番対応のGhostインスタンスをインストールする方法を学びました。
Ghostのヘルプページにアクセスして、Ghostインストールの管理方法の詳細を確認してください。 また、Ghost Marketplaceにアクセスして、Ghostテーマを見つけることもできます。
ゴーストnodejs npm ubuntuブログ