Hugo+Firebase+GitHub+CircleCIでブログ作る-0_4

実行ツールについて、0章まとめ

こんにちは!Naccoです(`・∀・´)ノ

前前前前回のシステム構成で使った各ツールを順番に役割、種類などを紹介していきます!

今回は「実行ツールについて、0章まとめ」です。



0章 ブログのシステム構成について

実行ツールについて

実行ツールについて
種類 特徴
CircleCI GitHubとの連携が強い。ビルド時間を短くするためのキャッシュの読み取り/保存の特別なステップがある。わかりやすいUI。
Wercker Travis CIやCircleCIと使用感は似ている。Orace Cloud上のk8sとの連携が簡単
TravisCI WerckerやCircleCIと使用感は似ている。異なるバージョンの言語とパッケージでテストを実行するBuild matrixというツールがある。
Cloud Build 1日あたり120分のビルドが無料。並行処理自体に課金はなく10個同時まで利用可能。docker pull/pushが高速。1ステップ1コンテナ使用する。pushトリガーだけでなくローカルからコマンド実行可。
AWS CodeBuild AWSの多数のサービスに連携可能。IAM権限設定ができる。実行環境にスペックが必要な時など有用。

Dockerなどのコンテナを使ってビルドやデプロイを実行するツールです。

実行ツールはGitHubなどの変更管理ツールからpushを受けると次のような処理を実行します。

  1. コンテナ上で静的サイトジェネレータをビルドして、HTMLなど静的サイトを生成する
  2. コンテナ上で静的ホスティングのCLIをインストールし、デプロイコマンドを実行する

今回もCI/CDツールと呼んでいないのは、ビルド・デプロイ実行ツールとしてのみ利用しているからです。Jenkinsはその用途では高機能すぎるので、選択肢からは外しました。CircleCIを選びました。

Cloud Buildだけ使い勝手が少し違うようなので、余裕が出たら触ってみたいです。

今回CircleCI設定の際に、ローカルとリモートでの実行結果の差異が発生するトラブルが起きてトラシュー作業が大変勉強になりました!

トラシューの内容は、3章に書く予定です!

0章のまとめと初投稿の反省。

まとめと初投稿の反省。

以上、0章ではブログ自動デプロイのシステム構成と構成要素となった各ツールの役割、種類を紹介しました! 実際の構築手順は次回1章から書いていきます。

単純に「ブログを書きたい」「記事をシェアしたい」だけならば、はてなブログなど無料ブログサービスも選択肢として十分アリです。(というかそちらが王道ですね。) 調べていく中で「モバイル環境でもストレスがないこと」「コードで管理すること」「自動化しやすいこと」が静的サイトジェネレータで構築するWEBシステムには集結していて、技術トレンドを知る上で、やって良かった!と思うところです。

ここからは反省点。

実は、3章までの構築作業自体は3時間弱ほどで完了しています。

オンライン勉強会コミュニティで構築作業のナビゲータをやってくださった方がいたので短時間で構築できましたが、 記事執筆については全然捗らず…0章だけで40時間は使っています(´・ω・`;)

もう少し軽快に記事書いていけるように「HackMDのテンプレを作った話」もまたの機会に記事にします! 最後までお付き合いいただき、ありがとうございました!

~Hugo+Firebase+GitHub+CircleCIでブログ作るシリーズ~

次回:1章 Hugoで生成した静的サイトをローカル環境でプレビュー

もし記事の内容でわからないところがあったら、★質問箱★に質問をください!Twitterで回答できるかはわかりませんが、このブログの記事か発表の糧にさせていただきます。

参考資料

勉強会 関連