Docker イメージの制御

Docker イメージは Docker コンテナを作るための設計図と考えるとわかりやすい。Docker イメージは Docker Hub から取得できる。Docker Hub には、Ubuntu や CentOS などの OS のイメージのほか、MariaDB や Django などのような様々なサービスに特化したイメージも配布されている。アプリケーション開発するとき、OS イメージからコンテナを作成して、そこにデータベースやサーバーをインストールしてから開発に取り組むのもできりし、すでにこれらがインストール済みのイメージを取得してすぐに開発に取り組むのもできる。

イメージ取得

Docker Hub で配布されている Docker は image pull コマンドで取得できる。例えば、Ubuntu 20.04 (Docker Hub) のイメージを取得する場合は次のようなコマンドを実行する。

docker image pull ubuntu:20.04
# 20.04: Pulling from library/ubuntu
# Digest: sha256:c844b5fee673cd976732dda6860e09b8f2ae5b324777b6f9d25fd70a0904c2e0
# Status: Downloaded newer image for ubuntu:20.04
# docker.io/library/ubuntu:20.04

イメージ一覧

ホスト上に保存されているイメージの一覧を出力させるには image ls コマンドを利用する。Docker イメージに対する制御は基本的に image を介して行う。

docker image ls -a
# REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
# ubuntu              20.04               adafef2e596e        5 days ago          73.9MB

イメージ削除

ホスト上に保存されているイメージを削除するとき image rm コマンドを利用する。削除する際に、image ls で確認したイメージの名前またはイメージの ID を指定する。

docker image rm ubuntu:20.04
docker image rm adafef2e596e

イメージプッシュ

Docker Hub にイメージをプッシュするとき、docker login コマンドで Docker Hub にログインしてから、image push コマンドでプッシュする。

docker login
docker image push biopapyrus/ubuntu:latest