Hexoは迅速かつ簡単なデプロイ戦略を提供します。 サイトをサーバーにデプロイするために必要なコマンドはたった一つです。
$ hexo deploy |
デプロイを行うサーバやリポジトリに対応するプラグインをインストールします。
デプロイは通常、_config.ymlに設定します。 設定にはtype
フィールドが必要です。 例えば:
deploy: |
複数のデプロイを設定することにできます。 Hexoは順番に各デプロイを実行します。
deploy: |
他のデプロイプラグインについては、プラグインリストを参照してください。
Git
- hexo-deployer-gitをインストールします。
$ npm install hexo-deployer-git --save |
- _config.ymlを編集します(以下の値はコメントとして示される例です):
deploy: |
オプション | 説明 | デフォルト |
---|---|---|
repo |
ターゲットリポジトリのURL | |
branch |
ブランチ名 | gh-pages (GitHub)coding-pages (Coding.net)master (その他) |
message |
コミットメッセージをカスタマイズ | Site updated: {{ now('YYYY-MM-DD HH:mm:ss') }} |
token |
リポジトリの認証に使うオプションのトークン値。 環境変数からトークンを読み込むには$ をプレフィックスとして使用。 |
- サイトをデプロイします
hexo clean && hexo deploy
。
- ターゲットリポジトリのユーザー名とパスワードが求められますが、トークンまたはsshキーで認証している場合は必要ありません。
- hexo-deployer-gitはユーザー名とパスワードを保存しません。 これらを一時的に保存するには git-credential-cacheを使います。
- リポジトリの設定に移動し、”Pages”ブランチを
gh-pages
(または任意に設定されたブランチ)に変更します。 “Pages”設定に表示されるリンクでデプロイされたサイトを表示できます。
Heroku
hexo-deployer-herokuをインストールします。
$ npm install hexo-deployer-heroku --save |
設定を編集します。
deploy: |
オプション | 説明 |
---|---|
repo , repository |
HerokuリポジトリURL |
message |
コミットメッセージをカスタマイズ (デフォルト: Site updated: {{ now('YYYY-MM-DD HH:mm:ss') }} ) |
Netlify
Netlifyは、Gitトリガーのビルド、インテリジェントなグローバルCDN、完全なDNS(カスタムドメインを含む)、自動化されたHTTPS、アセットの高速化、さらに多くを提供する統合プラットフォームです。 高性能でメンテナンスが容易なサイトやWebアプリケーションの作成を自動化します。
Netlifyでサイトをデプロイする方法は2つあります。 最も一般的な方法は、Web UIを使用することです。 新しいサイトを作成に移動し、GitHub、GitLab、Bitbucketからプロジェクトリポジトリを選択し、プロンプトに従ってください。
または、NetlifyのNodeベースのCLIツールより、ターミナルのみでNetlify上のサイトを管理およびデプロイすることができます。
READMEファイルにDeploy to Netlify Buttonを追加し、他の人があなたのリポジトリのコピーを作成した後、ワンクリックでNetlifyにデプロイされるようにすることもできます。
Rsync
hexo-deployer-rsyncをインストールします。
$ npm install hexo-deployer-rsync --save |
設定を編集します。
deploy: |
オプション | 説明 | デフォルト |
---|---|---|
host |
リモートホストのアドレス | |
user |
ユーザー名 | |
root |
リモートホストのルートディレクトリ | |
port |
ポート | 22 |
delete |
リモートホスト上の古いファイルを削除 | true |
verbose |
詳細なメッセージを表示 | true |
ignore_errors |
エラーを無視 | false |
OpenShift
hexo-deployer-openshift
は2022年に非推奨となりました。
hexo-deployer-openshiftをインストールします。
$ npm install hexo-deployer-openshift --save |
設定を編集します。
deploy: |
オプション | 説明 |
---|---|
repo |
OpenShiftリポジトリURL |
message |
コミットメッセージをカスタマイズ (デフォルト: Site updated: {{ now('YYYY-MM-DD HH:mm:ss') }} ) |
FTPSync
hexo-deployer-ftpsyncをインストールします。
$ npm install hexo-deployer-ftpsync --save |
設定を編集します。
deploy: |
オプション | 説明 | デフォルト |
---|---|---|
host |
リモートホストのアドレス | |
user |
ユーザー名 | |
pass |
パスワード | |
remote |
リモートホストのルートディレクトリ | / |
port |
ポート | 21 |
clear |
アップロード前にリモートのファイルとディレクトリを全て削除 | false |
verbose |
詳細なメッセージを表示 | false |
SFTP
hexo-deployer-sftpをインストールします。 sshエージェントを利用しパスワードなしでSFTP経由でサイトをデプロイできます。
$ npm install hexo-deployer-sftp --save |
設定を編集します。
deploy: |
オプション | 説明 | デフォルト |
---|---|---|
host |
リモートホストのアドレス | |
port |
ポート | 22 |
user |
ユーザー名 | |
pass |
パスワード | |
privateKey |
sshプライベートキーのパス | |
passphrase |
プライベートキーのオプションのパスフレーズ | |
agent |
sshエージェントのソケットのパス | $SSH_AUTH_SOCK |
remotePath |
リモートホストのルートディレクトリ | / |
forceUpload |
既存のファイルを上書き | false |
concurrency |
SFTPタスクを並行して処理する最大数 | 100 |
Vercel
Vercelは、ゼロコンフィグでJamstackなウェブサイトをインスタントにデプロイし、自動的にスケールする、監理不要なクラウドプラットフォームです。 グローバルエッジネットワーク、SSL暗号化、アセットの圧縮、キャッシュの無効化などを提供します。
ステップ1: package.json
ファイルにビルドスクリプトを追加します:
{ |
ステップ2: VercelにHexoウェブサイトをデプロイ
Vercel for Git Integrationを使用してHexoアプリをデプロイするには、Gitリポジトリにプッシュされていることを確認してください。
Import Flowを使用してプロジェクトをVercelにインポートします。 オプションはインポート時に事前設定されますが、何れかを変更することもできます。 これらのオプションのリストはこちらにあります。
プロジェクトのインポートが完了すると、以降のブランチへのプッシュはPreview Deploymentsを生成し、Production Branch(通常は”main”)に加えられたすべての変更はProduction Deploymentに反映されます。
または、以下のデプロイボタンをクリックして新しいプロジェクトを作成できます:
Bip
Bipは、静的ウェブサイトにゼロダウンタイムデプロイ、グローバルCDN、SSL、無制限の帯域幅などを提供する商用ホスティングサービスです。 支払いはドメインごとに従量制で行われます。
BipはHexoをサポートしており、すぐ簡単に初められます。 このガイドでは、すでにBipドメインを所有しBip CLIをインストールしていることを前提としています。
1: プロジェクトディレクトリを初期化します
$ bip init |
プロンプトに従います。 どのドメインにデプロイしたいか尋ねられます。 BipはあなたがHexoを使用していることを検出し、ソースファイルディレクトリなどのプロジェクト設定を自動的に設定します。
2: ウェブサイトをデプロイします
$ hexo generate —deploy && bip deploy |
しばらくすると、ウェブサイトがデプロイされます。
RSS3
hexo-deployer-rss3
は2023年に非推奨となりました。
RSS3は、Web 3.0時代のコンテンツおよびソーシャルネットワークのために設計されたオープンプロトコルです。
hexo-deployer-rss3をインストールします。
設定を変更します。
deploy: # The root configuration block for all deployers |
パラメータ | 説明 |
---|---|
endpoint |
RSS3ハブへのリンク |
privateKey |
あなたのプライベートキー、64バイト |
ipfs/deploy |
IPFSへのデプロイを実行するか? |
ipfs/gateway |
IPFS APIゲートウェイ |
ipfs/api/key |
IPFSゲートウェイ関連の認証コンテンツ |
ipfs/api/secret |
IPFSゲートウェイ関連の認証コンテンツ |
静的ファイルを生成します
デプロイします
デプロイ関連の考慮事項については、ドキュメントを参照してください。
Edgio (旧Layer0)
Edgio (旧Layer0)は、WebアプリやAPのをビルド、リリース、保護を加速する、インターネットスケールなプラットフォームです。
- hexoプロジェクトディレクトリで、Edgio CLIをインストールします:
npm i -g @edgio/cli |
- EdgioのHexoコネクタをインストールします:
edgio init --connector=@edgio/hexo |
- デプロイします
edgio deploy |
または、以下のデプロイボタンをクリックして新しいプロジェクトを作成できます:
その他の方法
生成されたすべてのファイルはpublic
フォルダに保存されます。 好きな場所にコピーしてください。