日本語 English
インターステラ株式会社の技術ブログです

【インターンステラ】KubernetesとDocker Image / GCP Cloud Shell

こんにちは、樋口です。今日は前回に引き続きKubernetesのDocker Imageについて学習しました。

前回まではこのチュートリアルを一通り試しましたが、最終部分のテストの実行が出来ず、その原因がDocker Image にあるのではないかという推測に至りました。チュートリアルに既に組み込まれていたグーグルコンテナレジストリのDocker Imageにはアクセスできなくなっていました。なので今回は、國分さんと二人でDockerインストールから四苦八苦しながらDocker イメージのアップロードをしました。使用OSはLinuxです。

Docker?は様々なOSに対応していますが、なぜかWindows 10 Homeには対応しておらず、自身のPCにインストールができませんでした。そのため、GCPのVM上でインストールしたのですが後々デフォルトで入っている事が判明。先に確認すれば良かったです・・・

インストール後はbuild, tag, pushの3つのステップでコンテナレジストリにアップロードします。VMを使っている場合は、先に”Dockerfile”のファイルを入れるのを忘れないようにしてください。

Build

$ docker build -t gcr.io/プロジェクト名/タイトル:latest .
権限がありません、と表示される場合はsudoを頭に付ければ大丈夫だと思います。(Linux)
Tag
$ docker tag イメージID gcr.io/プロジェクト名/タイトル
タイトルの後に何も付けない場合はデフォルトでlatestになります。タグは付ける様に推奨されているだけなので、この手順をスキップしても問題はありません。
Push
$ gcloud docker — push gcr.io/プロジェクト名/タイトル
実際にレジストリにイメージをアップロードするコマンドです。上手く行ったかわからない場合はレジストリ(gcr.io/プロジェクト名)に直接アクセスして確認するのが良いかもしれないです。私はここでUnexpected EOF(End of File)という謎なエラーにあたりました。色々と検索してみましたが原因は今もわからずじまいです。
代わりに使ったもの
上記で使ったVMが原因不明のエラーに直面したため、代わりにCloud Shellを使うことを教えていただきました。GCPのコンソール画面右上にクラウドシェルボタンがあります。これを使用すると5分もしないうちにエラーも出ずアップロードが出来ました。
————————————–
こういう作業、楽しくなってきました。
SNSでフォローする
PAGE TOP