S_Pure's Blog

ITエンジニアの趣味ブログ

KubernetesでHello-Worldを表示する

2020年06月11日

はじめに

Kubernetesを利用してみたいと思い、macOSでkubectlを導入して、Hello-Worldを表示させてみました。

kubectlのインストール

curlを利用して、macOSへkubectlのバイナリをインストールします。

最新リリースをダウンロードする

下記のcurlコマンドで最新リリースファイルをダウンロードします。

curl -LO "https://storage.googleapis.com/kubernetes-release/release/$(curl -s https://storage.googleapis.com/kubernetes-release/release/stable.txt)/bin/darwin/amd64/kubectl"

kubectlバイナリを実行可能にする

ダウンロードしたファイルの実行権限を変更し、実行できるようにします。

chmod +x ./kubectl

バイナリをPATHの中に移動

コマンドで実行できるように、バイナリファイルをPATHが通っているフォルダに移動します。

sudo mv ./kubectl /usr/local/bin/kubectl

インストールしたバージョンが最新かを確認

インストールが正常に完了しているかを確認するために、バージョンを表示・確認します。

kubectl version

実行結果
Client Version: version.Info{Major:"1", Minor:"15", GitVersion:"v1.15.5", GitCommit:"20c265fef0741dd71a66480e35bd69f18351daea", GitTreeState:"clean", BuildDate:"2019-10-15T19:16:51Z", GoVersion:"go1.12.10", Compiler:"gc", Platform:"darwin/amd64"}

kubernetesを実行してみる

下記のコマンドでhello-worldというイメージを実行する事ができます。

起動コマンド
kubectl run hello-world --image hello-world --restart=Never

pod/hello-world createdと表示されれば作成されています。

動作の確認

実際に、動作しているのかを確認してみましょう。

起動確認コマンド
kubectl get pod

下記のような実行結果が表示されます。

起動確認コマンド実行結果
NAME          READY   STATUS      RESTARTS   AGE
hello-world   0/1     Completed   0          2m6s

出力されたログを確認

起動したコンテナから出力されたログを確認してみましょう。

ログの確認コマンド
kubectl logs pod/hello-world
ログの確認結果
Hello from Docker!
This message shows that your installation appears to be working correctly.

To generate this message, Docker took the following steps:
 1. The Docker client contacted the Docker daemon.
 2. The Docker daemon pulled the "hello-world" image from the Docker Hub.
    (amd64)
 3. The Docker daemon created a new container from that image which runs the
    executable that produces the output you are currently reading.
 4. The Docker daemon streamed that output to the Docker client, which sent it
    to your terminal.

To try something more ambitious, you can run an Ubuntu container with:
 $ docker run -it ubuntu bash

Share images, automate workflows, and more with a free Docker ID:
 https://hub.docker.com/

For more examples and ideas, visit:
 https://docs.docker.com/get-started/

上記のログが表示されれば、正常に動作しています。

実行したコンテナのデータを削除

確認・実行が完了したコンテナを残し続けておく必要は無いので、こまめに削除した方が良いと思います。

下記コマンドで先ほど実行した物を削除します。

削除用コマンド
kubectl delete pod/hello-world

削除用コマンドを実行した結果、下記の実行結果が表示されます。

削除コマンド実行結果
pod "hello-world" deleted

最後に

kubernetesでHello-Worldのコンテナを実行してみました。 さらに、コンテナ技術について詳しく学び、開発に活かしていきたいと思います。


Written by Ryota Saito
関西出身 1993年生まれ
正社員プログラマとして勤務しながら様々な技術について勉強中
気になった技術情報を中心に発信しています。
like Guitar🎸 RADWIMPS🎧 Apple🍎
立命理工卒 好奇心旺盛

Twitterのフォローよろしくお願いします。

© 2020 Ryota Saito All Rights Reserved.