gcloudのコマンドラインツールへたどり着くまで省略します。
アクティブのアカウント名をリストアップする
gcloud auth list
出力:
Credentialed accounts:
- <myaccount>@<mydomain>.com (active)
プロジェクトIDをリストアップする
gcloud config list project
出力:
[core]
project = <project_ID>
Hello the world
docker run hello-world
Docker imagesでDockerhubからpull
したコンテナイメージを確認する
docker images
出力
REPOSITORY TAG IMAGE ID CREATED SIZE
hello-world latest XXXXXXXXX X days ago X.XX kB
起動中のコンテナ一覧を表示させる
docker ps
-a
を入れると、起動されていないコンテナも表示される。
Build
ディレクトリを作成する
mkdir test && cd test
Dockerfileを作成する(省略)
アプリのソースコードファイルを作成する(省略)
イメージをビルドする
docker build -t [image name]:0.1 .
-t
はイメージ名とタグ名をマッピングさせます。name:tag
tag
名を定義しなければ、デフォルトでlatest
として記録されます。
Run
docker run -p 4000:80 --name my-app [image name]:0.1
--name
でコンテナ名を命名することができます。
コンテナをstop
とrm
する
docker stop my-app && docker rm my-app
コンテナをバックグラウンドで動かせる
docker run -p 4000:80 --name my-app -d [image name]:0.1
-d
を使います。
docker logs [container_id]
コンテナのログを確認したい場合、上記コマンドを実行します。container_id
の開始数文字でそのコンテナを特定できれば、すべてのidを入力する必要がありません。
ソースコードを修正し、タグをバージョンアップ
docker build -t [image name]:0.2 .
docker run -p 8080:80 --name my-app-2 -d [image name]:0.2
curl http://localhost:8080
コンテナが正しく構築できたか確認します。
デバッグ
docker logs -f [container_id]
コンテナを動かしながら、ログを確認したい場合、-f
を使います。
Publish
Google Container Registryへ自作したイメージをプッシュする
[hostname]= gcr.io
[project-id]= your project's ID
[image]= your image name
[tag]= any string tag of your choice. If unspecified, it defaults to "latest".
gcloud config list project
プロジェクトIDを調べます。
docker tag [image name]:0.2 gcr.io/[project-id]/[image name]:0.2
イメージをTagします。
docker push gcr.io/[project-id]/[image name]:0.2
gcrへイメージをプッシュします。
Navigation menu
> Container Registry
にてプッシュされたイメージを確認することができます。また、http://gcr.io/[project-id]/[image name]
でも確認することができます。
docker stop $(docker ps -q)
docker rm $(docker ps -aq)
開発環境の中のコンテナを停止させ、削除することができます。
docker rmi [image name]:0.2 gcr.io/[project-id]/[image name] [image name]:0.1
docker rmi [image name]:[tag]
docker rmi $(docker images -aq)
docker images
子イメージを削除した後、親イメージを削除します。
docker pull gcr.io/[project-id]/[image name]:0.2
docker run -p 4000:80 -d gcr.io/[project-id]/[image name]:0.2
curl http://localhost:4000
再度開発環境でコンテナを起動したい場合、gcrにてストアしたイメージをdocker pull
し、docker run
します。