Docker+Hubとレイヤー構造

Docker Hubとは?

今回はDocker Hubとレイヤー構造についてまとめました。
殆ど自分のメモようなので間違えもあるかも...

Dockerイメージのリポジトリサービス (リポジトリ → イメージのいれもの?)
Dockerイメージの公開、検索、DLが可能

Docker Hub

■形式
 組織や個人/イメージ名

 tutum/hello-world


■tagを指定してイメージをpullする(latest)
 以下のようにhello-worldのイメージのlatestタグを指定してpullすることができます。
docker pull hello-world:latest

Dockerイメージとは?

・コンテナ実行に必要なファイルをまとめたファイルシステム
・AUFSなどの特殊なファイルシステム
・イメージ上のデータはレイヤで構成され、読み取り専用

Dockerイメージのファイルシステム

コマンドを実行する度に階層が積み重ねられる
あるレイヤーでファイルを追加した履歴は残り続ける(イメージに含まれている)
images

Dockerイメージの継承

以下のように、CentOSレイヤーにRubyのレイヤーを重ねることができる。
images
以下は同じcentosがベースとなっている
その場合、複数のcentosイメージを持つ必要がない
images

まとめ

なんとなくDockerHubとDockerのレイヤー構造についてまとめてみました。
自分も勉強中ですので、便利な使い方を模索していきたい。