GNU/Linux >> Linux の 問題 >  >> Panels >> Docker

Docker イメージ内のファイルを更新/追加する方法

この投稿では、必要に応じて、Docker ハブのパブリック リポジトリからプルされた標準の Docker イメージを変更する方法について説明します。この投稿の例では、最新の CentOS Docker イメージを取得し、テスト ディレクトリ「test_dir」を追加して、そこにテスト ファイル「test_fiel」を作成します。

Docker イメージにディレクトリとイメージを追加する

1. 最初のステップは、docker ハブから最新の CentOS イメージを取得することです。

# docker pull centos
Using default tag: latest
latest: Pulling from library/centos
d9aaf4d82f24: Pull complete 
Digest: sha256:4565fe2dd7f4770e825d4bd9c761a81b26e49cc9e3c9631c58cfc3188be9505a
Status: Downloaded newer image for centos:latest
# docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
centos              latest              d123f4e55e12        2 weeks ago         197MB

2. CentOS イメージがダウンロードされたら、このイメージに基づいて "centos_test" という名前の Docker コンテナーを実行します。

# docker run -it --name="centos_test" centos:latest /bin/bash
[root@e121d03b20dc /]#

3. コンテナ「test_dir」に新しいディレクトリを作成し、その中に「test_file」というファイルを作成します。また、test_file にランダムなテキストを追加します。

[root@e121d03b20dc /]# mkdir test_dir
[root@e121d03b20dc /]# cd test_dir
[root@e121d03b20dc test_dir]# echo "This is a sample text" > test_file         
[root@e121d03b20dc test_dir]# cat test_file
This is a sample text
[root@e121d03b20dc test_dir]# ls -lrt
total 4
-rw-r--r--. 1 root root 22 Nov 19 16:12 test_file

4. 次のステップは、新しく作成された docker コンテナーを使用して docker commit コマンドで新しいイメージをビルドすることです。 「docker commit」コマンドは、docker コンテナー自体からではなく、docker ホストから実行されます。

# docker commit -m="This a test image" centos_test new_centos_image
sha256:93603e53ff5329b314da097e3e5607b60cd1ce126f48cae542c083c715f069f7

ここで、
-m="これはテスト画像です" :コミット メッセージです。
centos_test :イメージを作成するコンテナの名前。
new_centos_image :作成された新しいイメージの名前。

5. 上記のコマンドを実行すると、システムでローカルに使用可能な Docker イメージのリストに新しいイメージ「centos_image」が表示されます。

# docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
new_centos_image    latest              93603e53ff53        52 seconds ago      197MB
centos              latest              d123f4e55e12        2 weeks ago         197MB

新しい Docker イメージのテスト

新しいコンテナーを実行して、新しく作成されたイメージをテストします。新しいコンテナーに作成されたテスト ディレクトリとテスト ファイルを一覧表示できるはずです。

1. 新しくビルドされたイメージから新しいコンテナーを作成します。

# docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
new_centos_image    latest              93603e53ff53        11 minutes ago      197MB
centos              latest              d123f4e55e12        2 weeks ago         197MB
# docker run -it --name="image_testing" new_centos_image:latest /bin/bash
[root@24bd49cd0e0e /]#

2. 前の図で作成したテスト ディレクトリとテスト ファイルを確認します。

[root@24bd49cd0e0e /]# ls -lrt test_dir
total 4
-rw-r--r--. 1 root root 22 Nov 19 17:09 test_file
[root@24bd49cd0e0e /]# cd test_dir
[root@24bd49cd0e0e test_dir]# cat test_file
This is a sample text


Docker
  1. ファイルの最後に改行を追加するにはどうすればよいですか?

  2. Dockerfileを使用してDockerイメージを構築する方法

  3. Dockerイメージを変更する方法

  1. Ubuntuでスワップファイルを追加する方法

  2. Dockerイメージに変更をコミットする方法

  3. FOG画像の更新方法

  1. Dockerイメージからファイルを抽出しますか?

  2. 既存のTar.gzアーカイブにファイルを追加/更新する方法は?

  3. Linux で .so ファイルを java.library.path に追加する方法