type
status
date
slug
summary
tags
category
icon
password
コンテナイメージの操作
目標
このセクションを完了すると、以下のスキルが身につきます:
- コンテナイメージをエクスポート・インポートし、ローカルおよびレジストリで管理する。
docker commit
コマンドを使用して新しいコンテナイメージを作成する。
- コンテナ内で変更されたファイルを特定する。
- 配布目的でイメージタグを管理する。
概要
コンテナイメージを管理する方法はさまざまです。例えば、開発者がカスタムコンテナを作成し、他の開発者や本番環境に転送したい場合には、以下の方法があります:
- コンテナイメージを
.tar
ファイルとして保存する。
- コンテナイメージをイメージレジストリにプッシュする。
注意
カスタムコンテナイメージの作成には、
docker commit
を利用する方法もありますが、推奨される方法は Dockerfile を使用することです。この方法は次の章で説明されます。1. イメージの保存と読み込み
保存 (docker save)
- Dockerキャッシュ内の既存のイメージを
.tar
ファイルとして保存できます。
- 保存されたファイルは通常の tar ファイルではなく、イメージのメタデータやレイヤー情報を含む特別な形式です。
- コマンド構文:
- 例:
読み込み (docker load)
- 保存された
.tar
ファイルを Dockerキャッシュに復元できます。
- コマンド構文:
- 例:
補足
- ディスク容量を節約するため、保存時にファイルを Gzip 圧縮することができます。
docker load
は自動的に Gzip 圧縮ファイルを展開して読み込みます。
2. イメージのレジストリへの公開
タグ付け (docker tag)
レジストリにイメージを公開する前に、イメージにタグを付けて識別する必要があります。
- コマンド構文:
- 例:
公開 (docker push)
タグ付けされたイメージをレジストリにプッシュします。
- コマンド構文:
3. イメージの削除
削除 (docker rmi)
キャッシュ内のイメージは不要になることがあります。イメージを削除する際には、以下のコマンドを使用します。
- コマンド構文:
- コンテナで使用中のイメージは削除できません。先にコンテナを停止・削除する必要があります。
- 使用されていないすべてのイメージを削除する場合:
補足
- イメージが複数のタグで参照されている場合、各タグを個別に削除する必要があります。ただし、
-force
オプションを使用することで強制削除が可能です。
4. イメージの変更
docker commit
Dockerfileを使用せず、実行中のコンテナを直接変更して新しいイメージを作成することも可能です。
- コマンド構文:
- 例:
変更内容の確認
コンテナ内で変更されたファイルを確認するには、
docker diff
を使用します。- コマンド構文:
5. タグ付けのベストプラクティス
推奨事項
latest
タグは、自動的に最新ビルドと見なされますが、プロジェクトによっては最新リリースを示す場合があります。
- バージョン管理を簡単にするため、複数のタグを使用して特定のリリースやバージョンを明確化することが推奨されます。
- 作者:みなみ
- 链接:https://tangly1024.com/資格勉強/144d7ae8-88e2-809b-b654-ec5d67e273a9
- 声明:本文采用 CC BY-NC-SA 4.0 许可协议,转载请注明出处。
相关文章