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?

More than 3 years have passed since last update.

社内向け Kubernetes Hands On(第1回 Pod編)

Last updated at Posted at 2020-02-17

Kubernetes Hands On(第1回)

Podの考え方

Podとは大まかに
Containerの集合体と考えることが出来ます。
簡単に考えると、
docker-composeで作成されるContainer群がPodだと考えることが可能です。

では、実際にPodを作成してみましょう。

pod.yaml
apiVersion: v1
kind: Pod
metadata:
  name: demo
  labels:
    name: demo
spec:
  selector:
    matchLabels:
      app: demo
  containers:
    - name: demo
      image: ncsnozominishinohara/demo:v1
      resources: {}
      ports:
        - containerPort: 80

解説

apiVersion

kubernetesのバージョンによって使用できる値は変わります。
kubernetesの所属しているAPIGROUPによって書き方が異なります。

  • 特定のApiGroupに属している場合・・・ apiVersion: ApiGroup/ApiVersion
  • 特定のApiGroupに属していない場合(CoreGroupに属している)・・・ apiVersion: ApiVersion
    対応しているApiGroupの調べ方は以下のコマンドを実行することで確認出来ます。(v1.17.2)

kubectl api-resource

kind

どのオブジェクトであるかを設定します。
今回であればkind: Podを指定しているため、
Podオブジェクトが作成されます。

metadata

このオブジェクトのメタ情報を設定します。

name: 任意の命名(後に他のkindオブジェクトで指定される値)
labels: 任意の命名が可能(但し制限もあるため、公式を参考に)

spec

オブジェクトの仕様を表します。

  • containers
    • name
      Pod名
    • image
      使用するコンテナイメージ名
    • resources
      CPU/メモリ等を設定
    • ports
      • containerPort
        コンテナ内からExposeされるポート番号

デプロイ方法

kubectl apply -f pod.yaml

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?