Kubernetes

Docker と Kubernetes の最新機能と導入ガイド(2026年版)

ⓘ本ページはプロモーションが含まれています

お得なお知らせ

スポンサードリンク
1ヶ月で資格+現場入り

インフラエンジニアへの最短ルート

未経験でもAWS・Linux・ネットワーク資格を最短で取り、現場入りまでサポート。SREやクラウドエンジニアの入口。

CODE×CODEスピード転職|無料面談▶ SRE/クラウドのフリーランス案件▶

▶ AWS/GCP/Kubernetesの独学には Kindle Unlimited の技術書読み放題がコスパ最強。


スポンサードリンク

Docker の基礎

用語 意味 主なコマンド例
イメージ 実行可能なファイルシステムのスナップショット。Docker Hub やプライベートレジストリに保存される。 docker pull nginx:latest
コンテナ イメージから起動した実行中プロセス。軽量で起動が数秒。 docker run -d -p 8080:80 nginx
Docker Engine Docker の本体(デーモン)。Linux カーネルの cgroups と namespace を利用してコンテナを隔離する。 docker info
Docker Compose 複数コンテナの定義・起動を YAML ファイルで管理できるツール。開発環境で頻繁に使われる。 docker compose up -d

Docker は「イメージを作成 → コンテナとして実行」までをローカルで完結させられる点が最大の魅力です。

基本的な操作フロー

  1. Dockerfile を書く
  2. docker build -t myapp:1.0 . でイメージ作成
  3. docker run --name app -p 8080:80 myapp:1.0 でコンテナ起動
  4. 必要に応じて Docker Hub や社内レジストリへ docker push

Dockerfile とビルドの基本手順

最小構成例

ポイント解説

  • FROM で公式イメージを指定すると脆弱性情報が追跡しやすい。
  • WORKDIR は以降の COPYRUN の作業ディレクトリになるので必ず設定する。
  • キャッシュ活用:依存ファイルだけ先にコピーして npm ci を走らせると、コード変更時でも再ビルドが速くなる。

ビルドコマンド例

Tip:Docker Desktop や Docker Engine に組み込まれている BuildKit はデフォルトで有効です。--progress=plain を付与するとビルドログが見やすくなります。


ローカル環境でのデバッグ・リソース管理

コンテナの状態確認

コマンド 説明
docker ps -a 起動中・停止中を含む全コンテナ一覧
docker logs <名前/ID> 標準出力・標準エラーのログ取得
docker inspect <名前/ID> 詳細情報(設定、ネットワーク、ボリューム)を JSON で表示

リソース使用量の可視化

  • --format "{{.Name}}\t{{.CPUPerc}}\t{{.MemUsage}}" で出力を整形できる。
  • ローカルで負荷テストしたいときは docker run --cpus=1.5 --memory=512m … のように リソース上限 を明示すると、実際の本番環境に近い条件で検証できる。

ボリュームで永続化

  • pgdata は Docker が管理する名前付きボリューム。コンテナ削除後もデータは保持される。

Kubernetes とは何か(初心者向け概要)

用語 説明
Pod 1 つ以上のコンテナとその共有ストレージ・ネットワークをまとめた最小単位。
Deployment Pod の宣言的な管理(ロールアウト、ロールバック)を行うコントローラ。
Service Pod に対する永続的な IP と DNS 名を提供し、ロードバランシングも担う。
Namespace 複数チームや環境ごとにリソースを分離できる論理領域。

Kubernetes は「Docker で作ったイメージ」を大規模クラスター上で自動配置・スケールさせるオーケストレーション基盤です。Docker がローカル開発を支えるのに対し、Kubernetes は本番環境での信頼性と拡張性を提供します。

簡単なマニフェスト例(Deployment + Service)

  • replicas を増やすだけで水平スケールが可能。
  • 本番環境では Horizontal Pod Autoscaler (HPA) を利用して CPU 使用率に応じた自動伸縮を設定できる(※Kubernetes 1.27 以降の標準機能)。

Docker イメージと Kubernetes の連携例

  1. Dockerfiledocker build -t registry.example.com/myapp:1.0 .
  2. イメージプッシュ
    bash
    docker push registry.example.com/myapp:1.0
  3. Kubernetes マニフェストに参照(上記 Deployment の image: 部分を書き換える)
  4. kubectl apply -f deployment.yaml でデプロイ

この流れは CI/CD パイプラインでも同様に自動化でき、GitHub Actions + Docker BuildKit → OCI レジストリ → Argo CD での継続的デリバリーが一般的です。


移行・運用チェックリスト

カテゴリ 確認項目 推奨ツール/設定
イメージ管理 イメージの署名とスキャン Docker Content Trust、Trivy
セキュリティ Seccomp/AppArmor プロファイル適用 runtimeClassName + カスタムプロファイル
CI/CD 連携 ビルド → テスト → デプロイの自動化 GitHub Actions, Argo CD
監視・可観測性 メトリクス、ログ、トレースの統合収集 Prometheus + Grafana、OpenTelemetry Collector
リソース設計 requests/limits の適切設定と QoS 判定 kubectl top pod で実測を確認
バックアップ etcd スナップショットとレジストリミラー Velero、Harbor ミラーレジストリ

ポイント:Docker だけでも開発は完結しますが、本番環境の可用性・スケールを考えるなら上記項目を順に導入していくとスムーズです。


参考リンク(公式ドキュメント)


まとめ

  • Docker は「イメージ作成・ローカル実行」の入口。docker builddocker rundocker compose をマスターすれば、開発環境はすぐに整います。
  • Kubernetes はそのイメージを大規模クラスター上で安全かつ自動的に運用するためのプラットフォーム。基本オブジェクト(Pod・Deployment・Service)とリソース設定さえ理解できれば、シンプルなマイクロサービスでも本番レベルの可用性を実現できます。
  • 移行 は「Dockerfile → イメージ → レジストリ → Kubernetes マニフェスト」の流れで段階的に進め、チェックリストに沿ってセキュリティ・監視・バックアップを整えていくのがベストプラクティスです。

このガイドが Docker と Kubernetes の入門者の学習ロードマップになることを願っています。 🚀

スポンサードリンク

お得なお知らせ

スポンサードリンク
1ヶ月で資格+現場入り

インフラエンジニアへの最短ルート

未経験でもAWS・Linux・ネットワーク資格を最短で取り、現場入りまでサポート。SREやクラウドエンジニアの入口。

CODE×CODEスピード転職|無料面談▶ SRE/クラウドのフリーランス案件▶

▶ AWS/GCP/Kubernetesの独学には Kindle Unlimited の技術書読み放題がコスパ最強。


-Kubernetes