0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【備忘】非エンジニアによるKubernetes学習アウトプット①(前提知識:LinuxとDocker)

Last updated at Posted at 2026-01-30

はじめに

※本記事は、非エンジニアである筆者がKubernetesを学習する中でのアウトプット(備忘録)です。
本番運用のベストプラクティスではなく、「理解の整理」を目的としています。

先日、Kubernetes入門として以下の記事を書きました。
【備忘】非エンジニアのためのKubernetes入門:製品トラブル時に理解しておくべき基礎知識

実際にKubernetesの理解を深めていく中で、より詳細に学習した内容をアウトプットとして残します。
本記事はシリーズ化を想定しており、第2回となる今回は、Kubernetesを触る前の前提知識である「Linux」と「Docker」についてです。


1. Linux

「Linuxとは何か」については、以下の記事が非常に参考になりました。

なぜKubernetes学習にLinux知識が必要なのか?
Kubernetes自体がLinux上で動作するシステムであり、トラブル調査などでPod(コンテナ)の中に入って操作する際、命令を出す「シェル」の操作が不可欠だからです。

ここでは、最低限覚えておきたい「シェル基本コマンド」を整理します。

シェル基本コマンド (Linux Basic Commands)

トラブルシューティング等でよく使うコマンド一覧です。

コマンド名 使用用途 詳細・イメージ 使用例
ls 一覧を表示 ファイルやフォルダを見たい時に使用。
ls -l(詳細表示)、ls -a(隠しファイル表示)
ls -la
cd ディレクトリを移動 フォルダの中に入ったり出たりする。
cd ..(一つ上へ)、cd ~(ホームへ)
cd test_dir
pwd 現在位置を表示 「今どこのフォルダにいるんだっけ?」と迷ったら実行 pwd
touch 空ファイルの作成 中身のないファイルを作る。既存ファイルなら更新時間を上書き touch text.txt
cat 内容を表示 ファイルの中身をサッと確認したい時に使う cat text.txt
rm 削除 ⚠️ ゴミ箱に入らず即完全削除されるので注意。
rm -rf は強制全削除なので特に注意
rm text.txt
ps プロセス表示 Windowsのタスクマネージャーのようなもの。
ps auxで全プロセスを確認可能
ps aux
man マニュアル表示 コマンドの使い方がわからない時に見る説明書 man ps
grep 文字列を検索 ファイルの中に特定の文字が含まれているか探す。
ログ調査で「error」を探す時などに必須
grep "error" app.log
tail 末尾を表示 ファイルの最後だけを表示する。
tail -f でログをリアルタイム監視できる
tail -f app.log

より細かいコマンドや仕組みについては、以下のブログにまとめています。
【初心者向け】これだけは覚えておきたいLinux基本コマンド&仕組みまとめ


2. ネットワークの必須知識:通信のルール

Kubernetesを理解する上で、ネットワークの知識も避けては通れません。

なぜネットワーク知識が必要なのか?
Kubernetesの最大の役割は「バラバラの箱(Pod)をネットワークで繋いで、一つのサービスとして外に見せること」だからです。

ここではネットワーク用語を、役割ごとにイメージしやすい言葉で整理しました。

① 住所と識別(IPアドレス・MACアドレス)

  • IPアドレス: データの届け先となる「ネット上の住所
    • kubernetesではPod(最小単位の箱)ひとつひとつにこの住所が割り振られます
  • MACアドレス: 機器そのものに刻まれた「シリアル番号
    • 住所(IP)は引っ越せば変わりますが、シリアル番号(MAC)は変わりません

② データの運び方(TCP/IP・ポート番号)

  • TCP/IP: 荷物を確実に届けるための「配送手順(ルール)
  • ポート番号: 住所(マンション)の中にある「部屋番号
    • IPアドレスでマンションまでは特定できますが、どの部屋(機能)に用事があるかを指定するのがポート番号
    • 例:Webサイトなら80番、データベースなら3306番など

③ 名前解決とセキュリティ(DNS・HTTPS)

  • DNS: 「ドメイン名(google.comなど)」を「IPアドレス」に変換する「電話帳
    • kubernetes内部の通信では、Podの再起動等でIPアドレスが変わっても大丈夫なように、DNSによる名前解決が頻繁に行われます。
  • HTTPS: 通信を暗号化して守るルール

3. Docker

「Dockerとは何か」の基礎概念については、以下の記事を参照ください。
【備忘】(非エンジニア向け)Dockerとは?5分でわかる基礎知識と使うべき理由

ここでは、実際に手を動かすための基本コマンドをアウトプットします。

Docker基本コマンド

1. イメージの操作 (Image Operations)

「イメージ」は、コンテナを作るための**「金型(設計図)」**です。

  • Dockerイメージを取得 (Pull)
    インターネット上のレジストリからイメージを手元にダウンロードします。
docker pull nginx
  • Dockerイメージを表示 (List)
    手元にある金型一覧を表示します。
docker images
  • Dockerイメージの履歴を表示 (History)
docker history nginx
  • Dockerイメージを削除 (Delete)
    不要になった金型を捨てます。
docker rmi nginx
# 削除されたか確認
docker images

2. コンテナの操作 (Container Operations)

「コンテナ」は、イメージ(金型)から作られた**「実体(たい焼き)」**です。

  • nginxサーバーのコンテナを起動 (Run)
    nginxイメージからコンテナを作成して起動します。
docker run -p 80:80 --name nginx nginx
  • 作動中のコンテナ一覧を表示 (List)
    現在動いている実体を確認します。
docker ps

# 停止中のコンテナも含めて全て表示する場合
docker ps --all
  • コンテナのログを表示 (Log)
    正常に動いているか、エラーが出ていないかを確認します。
docker logs nginx
  • コンテナの詳細情報を見る (Inspect)
    IPアドレスや設定などのメタデータを確認します。
docker inspect nginx
  • コンテナを停止・削除 (Stop & Remove)
    stopは電源オフ、rmは廃棄です。
# 停止
docker stop nginx
# 削除(停止してからでないと削除できません)
docker rm nginx

3. 少し応用的な起動オプション

  • バックグラウンドで起動 (--detach / -d)
    コンテナを裏側でひっそりと動かし続けます(通常はこちらを使います)。
docker run -d -p 80:80 --name nginx nginx
  • 作動中のコンテナの中に入る (exec -it)
    動いているコンテナの中にログインして、Linuxコマンドを実行します。トラブルシューティングで非常によく使います。
# コンテナの中のシェル(sh)を起動
docker exec -it nginx sh

# コンテナから出る
exit
  • 環境変数を設定して起動 (--env / -e)
    設定値を外から渡して起動します。
docker run -e TEST_ENV=hello_world -d --name nginx nginx

# 確認(中に入ってenvコマンドを打つのと同じ)
docker exec -it nginx env
  • ポート番号を変えて起動 (-p)
    [ホスト側のポート]:[コンテナ側のポート] で指定します。
    以下の場合、自分のPCのポート8080にアクセスすると、コンテナのポート80に繋がります。
docker run -p 8080:80 -d --name nginx nginx

# ブラウザやcurlでアクセス確認
curl localhost:8080

4. イメージの作成 (Build)

自分で書いた設計図(Dockerfile)からイメージを作成します。
※カレントディレクトリに Dockerfile が必要です。

# ドット(.)は現在のディレクトリを指します
docker build --tag dockerfile_hello .

# 自作イメージからコンテナを起動
docker run -d -p 9090:80 --name hello_v2 dockerfile_hello

お掃除コマンド(クリーンアップ)

いろいろ試していると不要なコンテナやイメージが溜まるので、一括削除するコマンドです。
※強力な削除コマンドなので注意して使用してください。

  • 停止中のコンテナ等を削除
docker system prune
  • 【要注意】全コンテナを強制削除
    起動中のコンテナも含めて無理やり削除します。
docker rm -vf $(docker ps -a -q)
  • 【要注意】全イメージを強制削除
docker rmi -f $(docker images -a -q)

今回はここまでです。
次回から、kubernetesの機能(Pod)について触れていきます。

⇒次回ブログ
【備忘】非エンジニアによるKubernetes学習アウトプット②(Podについて)

0
0
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
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?