LoginSignup
16
12

More than 3 years have passed since last update.

書評:CircleCI実践入門

Last updated at Posted at 2020-09-23

はじめに

先日発売されました「CircleCI実践入門」を読みました。2020年9月現在、唯一日本語で書かれたCirecle CI本ということで期待して購入したところ、取り扱われている情報の質・量ともに大変満足のいく本でした。そこで、今回本書籍について簡単に書評を書こうと思った次第です。

この記事で取り扱う内容

  • 本書籍をオススメする人について(同時に、この本のユースケース)
  • 読むうえで必要な前提知識
  • 各章のポイント、特にCircleCIを理解・実践する上で意識した方がよいと思ったこと
  • オススメの読み方

この記事では取り扱わない内容

  • 具体的なconfig.ymlの記述や各種設定の仕方について(書籍には書かれています)

誰向けの本か

  • CI/CD周りの知識が欲しい

  • CIrcleCIをまだ使っていないが使ってみたい

  • CircleCIを使うかはわからないが、とりあえず機能を知ったうえで検討したい

  • CircleCIを使っているが、使い方がわからない

  • CircleCIを使いこなせているが、もっと良い使い方があるなら知りたい

  • CircleCIの必要知識が体系的にまとまった本が欲しい

上記に一つでも当てはまるなら購入を検討されてはいかがでしょう

前提知識

(ほぼ)必須

  • git / GitHub に関する知識
  • シェルスクリプト
  • 手作業でビルド、テスト、デプロイする方法

推奨(なくても読むことは可能だがあると読みやすい)

  • Dockerに関する知識
  • CI/CDを導入したいアプリのビルド、テストする方法
  • AWSに関する知識
  • YAML(書籍中で簡単な説明あり)
  • CI/CD に関する知識

各章ポイントメモ

※業務上当面必要にならないため、第8章の一部、および第9章~第11章は読み飛ばしてます

第1章 なぜCI/CDが必要なのか

  • ビジネスに変化への対応が求められる⇒アジャイル開発が重要視

  • アジャイル開発においては、システムを安定稼働させつつ早く開発することが求められる⇒DevOpsの思想に行き着く

  • ビルド、テスト、デプロイ作業を手作業(ミスが起きる、遅い)ではなく自動化(一度うまくいけば(機能が壊れない限り)そのまま、早い)⇒CI(継続的インテグレーション)/CD(継続的デリバリ、あるいはデプロイ)

第2章 CircleCIの基本

第3章 環境構築

第4章 ワークフローでジョブを組み合わせる

第5章 実践的な活用法

第6章 テストの基本と最適化

第7章 継続的デプロイの実践

  • Test in Production :本番環境でテストをする(テスト環境でのテストには限界がある)
  • 仮に本番環境で問題が見つかったのならすぐにロールバックする(前バージョンに戻す)
  • ロールバックとリリースを迅速に行うためにCD(継続的デプロイ)が必要となる
  • CDを行うには、Orbsを用いると効率的(サンプルではAWSのECRECSのOrbsを使用)
  • リリース時にバグが見つかった:バグフィックス版を再度プッシュするか、取り消しのコミットをプッシュする(ロールバック)

第8章 Webアプリケーション開発、インフラでの活用

  • Webアプリケーション開発:TypeScript、Rails、Laravel、Spring Bootに関するビルド、テストについてサンプルで解説
  • インフラでの活用:Dockerのビルド設定とCircleCIを用いたTerraformの自動実行についてサンプルで解説

第12章 Orbsの作成

オススメの読み方

ある程度CircleCIについて知っている方であれば、知りたいところを読むリファレンス的な使い方で問題ないです。(体系的に情報がまとまっている上に、巻末にconfig.ymlの構文がまとめられていますので、おおよそ知りたいことは調べられる作りだと思います)

CircleCI初学者の方であれば、上記の前提知識を学習してから第2~5章までを読み、CircleCIの基本的な使い方を学んだ後、CircleCIをアプリケーションに導入していくうえで必要な知識を適時以降の章から学んでいく、という読み方にするとよいと思います。

16
12
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
16
12