ゴースト は完全にオープンソース(MITライセンス)のブログプラットフォームであり、2013年のリリース以降、開発者や一般ユーザーの間で人気が高まっています。 GhostのソースコードはGitHubで公開されています。 Ghostは通常、約〜300MB RAM うまく動作するので、適度なハードウェアで実行できます。 コンテンツに重点を置いています およびブログ 。 Ghostの最も魅力的な点は、シンプルでクリーン、エレガントでレスポンシブなデザインです。あなたは携帯電話からあなたのブログ投稿を書くことができます。 Ghostのコンテンツは、Markdown言語を使用して記述およびフォーマットされています。 Ghostは、個人または小グループの作家に最適です。 Ghostには、Accelerated Mobile Pages( AMP )のサポートも組み込まれています。 )プロジェクト。これにより、携帯電話でのブログの読み込みが非常に速くなります。
最近、Ghost開発者は、Ghostの最初のメジャーで安定したリリース-1.0.0をリリースしました。 Ghost 1.0.0は多くの新機能を導入しましたが、その中で最も注目すべきものは次のとおりです。まったく新しいMarkdownエディター、更新されたユーザーインターフェース( UI )、新しいデフォルトのテーマデザイン、 Ghost-CLIを使用した新しく改善されたインストールと更新のプロセス ツール。
このチュートリアルでは、Ghostの Ghost-CLI を使用して、安全なGhostブログを設定してデプロイします。 Ubuntu 18.04 LTSのツール Let's Encryptを使用するサーバー 、 Acme.sh 、 Node.js 、 npm 、糸 、 NGINX およびMySQL / MariaDB 。
- ドメイン名。このチュートリアルでは、example.comドメインを使用します。
- 1GBまたはRAMを搭載したUbuntu18.04LTSを実行しているサーバー。
- sudo権限を持つroot以外のユーザー。
Ubuntuのバージョンを確認してください:
lsb_release -ds
# Ubuntu 18.04 LTS
タイムゾーンを設定します:
timedatectl list-timezones
sudo timedatectl set-timezone 'Region/City'
オペレーティングシステムのパッケージを更新します:
sudo apt update && sudo apt upgrade -y
build-essential
をインストールします パッケージ:
sudo apt install -y build-essential
注 :最新のGhost 1.0.0は現在、Node.jsバージョンをサポートしています 8.9+ および6.9+ のみ。
GhostはNode.js上に構築されています。 推奨をインストールします v8 Carbon LTSであるGhostのバージョン この執筆チュートリアルの時点で。 Linuxには、いくつかのインストールオプションがあります。Linuxバイナリ(x86 / x64)、ソースコード、またはパッケージマネージャーを使用します。 Nodesourceリポジトリを利用してパッケージマネージャー方式を使用します。
最新のロングタームサポート( LTS )をダウンロードしてインストールします )Node.jsのバージョン(リリース):
curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash -
sudo apt install -y nodejs
注 :npmはNode.jsと一緒に配布されます。つまり、Node.jsをダウンロードすると、自動的にnpmがコンピューターにインストールされます。
Node.jsとnpmのバージョンを確認してください:
node -v && npm -v
# v8.11.2
# 5.6.0
NpmはNode.jsとは別のプロジェクトであり、より頻繁に更新される傾向があります。その結果、Node.js(したがってnpm)をダウンロードしたばかりの場合でも、おそらくnpmを更新する必要があります。幸いなことに、npmは自分自身を更新する方法を知っています! npmを更新するには、ターミナルに次のように入力します:
sudo npm install -g [email protected]
npmのバージョンを再確認してください。最新バージョンである必要があります:
npm -v
# 6.1.0
Ghostは、MySQL/MariaDBおよびSQLiteデータベースをサポートしています。ただし、このチュートリアルでは、MariaDBデータベースを使用します。必要に応じて、MariaDBの代わりにMySQLを使用できます。
マシンのMariaDBリポジトリから最新の安定バージョンのMariaDBサーバーをダウンロードしてインストールします。
sudo apt-get install software-properties-common
sudo apt-key adv --recv-keys --keyserver hkp://keyserver.ubuntu.com:80 0xF1656F24C74CD1D8
sudo add-apt-repository 'deb [arch=amd64] https://mirrors.nxthost.com/mariadb/repo/10.3/ubuntu bionic main'
sudo apt update
sudo apt install -y mariadb-server
MariaDBのインストールプロセス中に、MariaDBのroot
を入力するように求められます ユーザーのパスワード。強力なパスワードを入力する必要があります。
MariaDBのバージョンを確認してください:
mysql --version && sudo mysqld --version
# mysql Ver 15.1 Distrib 10.3.7-MariaDB, for debian-linux-gnu (x86_64) using readline 5.2
# mysqld Ver 10.3.7-MariaDB-1:10.3.7+maria~bionic-log for debian-linux-gnu on x86_64 (mariadb.org binary distribution)
MariaDBデーモンが起動して実行されているかどうかを確認します:
sudo systemctl status mysql.service
sudo systemctl is-enabled mysql.service
mysql_secure_installation
を実行します MariaDBインストールのセキュリティを向上させるユーティリティ(スクリプト):
sudo mysql_secure_installation
# Enter current password for root (enter for none):
# Change the root password? [Y/n] N
# Remove anonymous users? [Y/n] Y
# Disallow root login remotely? [Y/n] Y
# Remove test database and access to it? [Y/n] Y
# Reload privilege tables now? [Y/n] Y
# Success.
# All done! If you've completed all of the above steps, your MariaDB
installation should now be secure.
# Thanks for using MariaDB!
MariaDB root
としてMariaDBコマンドラインにログイン(接続)します ユーザー:
mysql -u root -p
Ghostインストール用の新しいMariaDBデータベースとユーザーを作成します。このステップはオプションです。後のステップのGhost-CLIツールでデータベースを作成できるため、Ghostのインストール中にGhost-CLIから要求された場合は、MariaDBのrootユーザーのクレデンシャル(ユーザー名とパスワード)を入力するだけです。
mysql> CREATE DATABASE dbname;
mysql> CREATE USER 'username'@'localhost' IDENTIFIED BY 'password';
mysql> GRANT ALL ON dbname.* TO 'username'@'localhost';
mysql> FLUSH PRIVILEGES;
MariaDBを終了(切断)します:
mysql> EXIT;
NGINX(engine-x)は、ベアメタル、パブリック/プライベート/ハイブリッドクラウド、コンテナなど、すべての環境で適切に機能する高性能ウェブサーバー、ロードバランサー、キャッシュ、プロキシサーバーです。 NGINXは、Ghostアプリケーションのリバースプロキシとして使用されます。
NGINXは、オペレーティングシステムに応じて異なる方法でインストールできます。 Linuxの場合、nginx.orgのNGINXパッケージを使用できます。
最新のメインラインをダウンロードしてインストールします (ほとんどの展開に推奨 )公式のNGINXリポジトリから直接NGINXと動的にロード可能なモジュールをリリース:
wget https://nginx.org/keys/nginx_signing.key
sudo apt-key add nginx_signing.key
rm nginx_signing.key
sudo -s
printf "deb https://nginx.org/packages/mainline/ubuntu/ $(lsb_release -sc) nginx\ndeb-src https://nginx.org/packages/mainline/ubuntu/ $(lsb_release -sc) nginx\n" >> /etc/apt/sources.list.d/nginx_mainline.list
exit
sudo apt update
sudo apt install -y nginx nginx-module-geoip nginx-module-image-filter nginx-module-njs nginx-module-perl nginx-module-xslt
バージョンを確認して、NGINXがインストールされていることを確認します:
sudo nginx -v && sudo nginx -V
# nginx version: nginx/1.15.0
# nginx version: nginx/1.15.0
NGINXを起動して有効にします:
sudo systemctl start nginx.service
sudo systemctl enable nginx.service
/etc/nginx/snippets, /etc/nginx/ssl
を作成します 、/etc/nginx/sites-available
および/etc/nginx/sites-enabled
ディレクトリ。これらのディレクトリは、Ghost-CLIツールが正しく機能するために必要です:
sudo mkdir -p /etc/nginx/{snippets,ssl,sites-available,sites-enabled}
include /etc/nginx/sites-enabled/*.conf;
に追加します nginx.conf
へのディレクティブ ファイル、実行:
sudo vim /etc/nginx/nginx.conf
ファイルを保存してVimエディターを終了します。
ステップ4-Yarnをインストールします(オプション)
システムにYarnパッケージマネージャーをダウンロードしてインストールします:
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
sudo apt update && sudo apt install -y yarn
糸のバージョンを確認してください:
yarn --version
# 1.7.0
Ghost-CLIは、Ghostのインストールと更新を簡単にするコマンドラインインターフェース(CLI)ツールです。データベースをセットアップし、NGINXをリバースプロキシとして構成し、Let’sEncryptCAを使用してTLS/SSLセキュリティを有効にし、SSLを自動的に更新し、Ghostをsystemdサービスとして初期化します。 Ghost-CLIは、npm
のいずれかを介してインストールできるnpmモジュールです。 またはyarn
。
Ghost-CLIツールをダウンロードしてインストールします:
sudo npm install -g [email protected]
# or with Yarn
sudo yarn global add [email protected]
Ghost-CLIバージョンを確認してください:
ghost version
# Ghost-CLI version: 1.8.1
Ghostのインストールまたは更新時に発生する可能性のある問題について、システムのトラブルシューティングを行います。
ghost doctor install
次に、Ghost-CLIツールを使用してGhostをインストールします。
まず、空のドキュメントルートディレクトリを作成します:
sudo mkdir -p /var/www/example.com
/var/www/example.com
の所有権を変更します sudo
を使用してroot以外のユーザーへのディレクトリ 作成した特権。この例では、johndoe:
sudo chown johndoe:johndoe /var/www/example.com
インストールフォルダには正しい権限が必要です:
sudo chmod 755 /var/www/example.com
Ghostルートディレクトリに移動します:
cd /var/www/example.com
ファイルの競合を避けるために、ディレクトリが空であることを確認してください:
ls -a
次のコマンドを実行して、Ghostを本番モードでインストールします:
ghost install
プロンプトに従って各質問に答えます:
? Enter your blog URL: https://example.com
? Enter your MySQL hostname: localhost
? Enter your MySQL username: root
? Enter your MySQL password: your_mysql_root_user_password_here
? Enter your Ghost database name: database_name_for_ghost
? Do you wish to set up "ghost" mysql user? yes
? Do you wish to set up Nginx? yes
? Do you wish to set up SSL? yes
? Enter your email (used for Let's Encrypt notifications) [email protected]
? Do you wish to set up Systemd? yes
? Do you want to start Ghost? yes
インストールが完了したら、実行します
ghost ls
実行中のGhostプロセスを表示します。
将来、新しいバージョンがリリースされたときにGhostブログを更新するには、実行する必要があります
ghost update
GhostインストールディレクトリからのコマンドとGhost-CLIがすべてを処理します。
セットアッププロセスを完了するには、/ghost
を追加して、Ghost構成ページに移動します。 ブログのURLまたはIPの最後まで。この例では、https://example.com/ghost
を使用しています 。
ようこそ画面で、[アカウントを作成]をクリックします :
メールアドレスを入力し、ユーザー、パスワード、ブログのタイトルを作成します:
チームに追加のメンバーを招待します。この手順をスキップする場合は、[後で行います。ブログに移動してください!]をクリックしてください。 ページの下部にあります。
Ghost管理エリアに移動して、最初の投稿を作成したり、サイトのテーマを変更したり、追加の設定を構成したりします。
おめでとうございます!これで、GhostブログプラットフォームがUbuntu18.04LTSサーバーに正常にインストールおよびデプロイされました。