Hexoでブログで記事をデプロイ(公開)する

目次
  1. 1. Hexoで生成してFTPでアップする場合
  2. 2. FTP以外のアップロード方法
    1. 2.1. hexo-deployer-ftpsync
    2. 2.2. hexo-deployer-s3
    3. 2.3. hexo-deployer-rsync
    4. 2.4. hexo-deployer-git
    5. 2.5. hexo-deployer-netlify
  3. 3. まとめ

さて、前回の記事では、静的サイトジェネレーターHexoのインストールについて解説しました。

では、Hexoでブログをデプロイ(公開)するにはどうすればいいのでしょうか。本記事では、デプロイの仕方について解説します。

Hexoで生成してFTPでアップする場合

FTPサーバーに直接アップロードする場合です。

ローカルマシンでHexoが動いているディレクトリで

1
Hexo generate

と入力します。

すると、publicというディレクトリが生成され、そこにHexoで書いたブログがHTML/CSS/JS/画像など一式まるっと生成されます。

publicディレクトリ内の様子

上記は、当ブログのpublicディレクトリ内の様子です。カテゴリごとにディレクトリを切る設定にしているので、カテゴリ名のディレクトリが作られていますね。

また、sitemap.xmlやatomフィードといった、当ブログで設定しているフィード系のファイルも見えます。

これで、このディレクトリがそのままFTPサーバーで公開できる状態にあることがわかると思います。

あとは、FTPクライアントアプリで任意のサーバーに接続し、任意のディレクトリにアップすればOKです。

FTP以外のアップロード方法

とはいえ、毎回毎回FTPでアップするのも考えものです。

ファイルが大量にあるので、リクエストの発生数がものすごいですし、毎回FTPアプリを立ち上げるのも面倒です。

そこで、Hexoにはdeployコマンドと、deployerというプラグインが存在します。

1
Hexo deploy

というコマンドを叩くと、インストールされているdeployerプラグインが起動し、設定されたデプロイ環境へデプロイが始まります。

deployerプラグインは、Hexoの公式プラグインページから探すことができます。

以下に、主なものを紹介します。

hexo-deployer-ftpsync

Hexo公式のFTPデプロイヤーです。このプラグインを使用すると、毎回FTPアプリを立ち上げることなく、記事をFTPサーバーにデプロイすることができます。

hexo-deployer-s3

Amazon S3にデプロイするデプロイヤーです。S3は僅かなコストで静的ファイルをホスティング出来るので、静的サイトジェネレーターと相性が良いホスティング先ですね。

hexo-deployer-rsync

Rsyncを使って同期するタイプのデプロイヤーです。デプロイ先のサーバーの都合で直接アップできない、でもRsyncならOK、っていうような場合だと使いようがあるかと思います。

hexo-deployer-git

Gitを使ったデプロイです。主にGitHubとGitHub PagesでHexoブログを運用したい場合に用います。

hexo-deployer-netlify

NetlifyでHexoファイルをホスティングする場合のデプロイヤーです。

このブログもNetlifyで運用中ですが、私は別の方法でデプロイしています。その方法については、機会があれば、別の記事で紹介しますね。

まとめ

いかがでしょうか。Hexoのデプロイ(公開)には、2種類あることが理解いただけたと思います。

  1. hexo generateして、FTP経由で手動公開
  2. hexo deployして、自動で任意の環境に公開

の2種類です。また、後者については、S3、GitHub Pages、Netlifyなど、Webサーバー以外の環境にもデプロイできることが分かりました。

ただし、後者の方法は、deployerのインストールと設定が必要ですが、それさえしてしまえば、コマンド一発で公開できるので、日々の更新がとても楽になります。

ご自身の環境に合わせてデプロイ方法を選べるのが、Hexoって懐が深いな~と思ってます。また逆に、デプロイの仕方によって、ホスティング環境を選ぶのも良いと思います。お気に入りのホスティング環境を探してみてくださいね。