Dockerとイメージの操作方法

Dockerとイメージの操作方法

ミラーを探す

Docker Hubのウェブサイトからイメージを検索できます。Docker Hubのウェブサイトはhttps://hub.docker.com/です。

docker search コマンドを使用してイメージを検索することもできます。たとえば、Web サービスとして httpd ミラーが必要です。 docker search コマンドを使用して httpd を検索し、適切なイメージを見つけることができます。

docker 検索 httpd

画像をドラッグ

上図の httpd の公式バージョンを使用し、コマンド docker pull を使用してイメージをダウンロードすることにしました。

docker プル httpd

イメージを削除します。docker rmi コマンドを使用してイメージを削除します。たとえば、hello-world イメージを削除します。

$ docker rmi hello-world

画像を作成する

Docker イメージ リポジトリからダウンロードしたイメージがニーズを満たさない場合は、次の 2 つの方法でイメージを変更できます。

1. 作成したコンテナからイメージを更新し、イメージを送信する
2. Dockerfileの指示に従って新しいイメージを作成する

画像を更新する

イメージを更新する前に、イメージを使用してコンテナを作成する必要があります。

runoob@runoob:~$ docker run -t -i ubuntu:15.10 /bin/bash
ルート@e218edb10161:/#

実行中のコンテナで apt-get update コマンドを使用して更新します。

操作が完了したら、exit コマンドを入力してコンテナを終了します。

現時点では、ID e218edb10161 のコンテナが、ニーズに応じて変更されたコンテナです。コンテナのコピーは、docker commit コマンドでコミットできます。

runoob@runoob:~$ docker commit -m="has update" -a="runoob" e218edb10161 runoob/ubuntu:v2
sha256:70bf1840fd7c0d2d8ef0a42a817eb29f854c1af8f7c59fc03ac7bdee9545aff8

各パラメータの説明:

  • -m: 説明情報を送信する
  • -a: 画像の作成者を指定する
  • e218edb10161: コンテナID
  • runoob/ubuntu:v2: 作成するターゲットイメージ名を指定します

イメージをビルドする docker build コマンドを使用して、最初から新しいイメージを作成します。これを行うには、Docker にイメージの構築方法を指示する一連の命令を含む Dockerfile を作成する必要があります。

runoob@runoob:~$ cat Dockerfile 
Centos:6.7 から
メンテナー Fisher "fisher@s​​udops.com"

/bin/echo 'root:123456' |chpasswd を実行します。
実行 useradd runoob
実行 /bin/echo 'runoob:123456' |chpasswd
/bin/echo -e "LANG=\"en_US.UTF-8\"" を実行 >/etc/default/local
エクスポーズ22
エクスポーズ80
コマンド /usr/sbin/sshd -D

各命令は画像上に新しいレイヤーを作成します。各命令のプレフィックスは大文字にする必要があります。

最初のFROMはどのミラーソースを使用するかを指定します

RUN 命令は、イメージ内のコマンドとインストール内容を実行するように Docker に指示します。 。 。

次に、Dockerfile ファイルを使用して、docker build コマンドでイメージをビルドします。

runoob@runoob:~$ docker build -t runoob/centos:6.7 。
ビルド コンテキストを Docker デーモンに送信 17.92 kB
ステップ 1: Centos:6.7 から
 ---> d95b5ca17cc3
ステップ 2: メンテナー Fisher "fisher@s​​udops.com"
 ---> キャッシュの使用
 ---> 0c92299c6f03
ステップ3: /bin/echo 'root:123456' |chpasswd を実行します。
 ---> キャッシュの使用
 ---> 0397ce2fbd0a
ステップ4: useradd runoobを実行する
......

パラメータの説明:

-t: 作成するターゲットイメージの名前を指定します

. : Dockerfile が配置されているディレクトリ。Dockerfile の絶対パスを指定できます。

docker imagesを使用して、作成したイメージがリストにすでに存在することを確認します。イメージIDは860c279d2fecです。

runoob@runoob:~$ docker イメージ 
リポジトリ タグ イメージ ID 作成 サイズ
runoob/centos 6.7 860c279d2fec 約1分前 190.6 MB
runoob/ubuntu v2 70bf1840fd7c 17 時間前 158.5 MB
ubuntu 14.04 90d5884b1ee0 6日前 188 MB
php 5.6 f40e9e0f10c8 10日前 444.8 MB
nginx 最新 6f8d099c3adc 12日前 182.7 MB
mysql 5.6 f2e8d6c772c0 3 週間前 324.6 MB
httpd 最新 02ef73cf1bc0 3週間前 194.4 MB
ubuntu 15.10 4e3b13c8a266 5 週間前 136.3 MB
hello-world 最新 690ed74de00f 6か月前 960 B
centos 6.7 d95b5ca17cc3 6か月前 190.6 MB
トレーニング/ウェブアプリ 最新 6fae60ef3446 12か月前 348.8 MB

新しいイメージを使用してコンテナを作成できます

runoob@runoob:~$ docker run -t -i runoob/centos:6.7 /bin/bash
[root@41c28d18b5fb /]# id ランウーブ
uid=500(runoob) gid=500(runoob) グループ=500(runoob)

上記から、新しいイメージには作成したユーザー runoob がすでに含まれていることがわかります。

画像タグを設定する

docker tag コマンドを使用して、イメージに新しいタグを追加できます。

runoob@runoob:~$ docker タグ 860c279d2fec runoob/centos:dev

docker tag イメージ ID (ここでは 860c279d2fec )、ユーザー名、イメージ ソース名 (リポジトリ名)、および新しいタグ名 (タグ)。

docker images コマンドを使用すると、ID 860c279d2fec のイメージに追加のタグがあることがわかります。

runoob@runoob:~$ docker イメージ
リポジトリ タグ イメージ ID 作成 サイズ
runoob/centos 6.7 860c279d2fec 5 時間前 190.6 MB
runoob/centos dev 860c279d2fec 5 時間前 190.6 MB
runoob/ubuntu v2 70bf1840fd7c 22 時間前 158.5 MB
ubuntu 14.04 90d5884b1ee0 6日前 188 MB
php 5.6 f40e9e0f10c8 10日前 444.8 MB
nginx 最新 6f8d099c3adc 13 日前 182.7 MB
mysql 5.6 f2e8d6c772c0 3 週間前 324.6 MB
httpd 最新 02ef73cf1bc0 3週間前 194.4 MB
ubuntu 15.10 4e3b13c8a266 5 週間前 136.3 MB
hello-world 最新 690ed74de00f 6か月前 960 B
centos 6.7 d95b5ca17cc3 6か月前 190.6 MB
トレーニング/ウェブアプリ 最新 6fae60ef3446 12か月前 348.8 MB

Dockerとイメージの操作方法についての記事はこれで終了です。より関連性の高いDockerとイメージの操作内容については、123WORDPRESS.COMの過去の記事を検索するか、以下の関連記事を引き続き閲覧してください。今後とも123WORDPRESS.COMをよろしくお願いいたします。

以下もご興味があるかもしれません:
  • Dockerイメージ内のnoneイメージ操作を削除する
  • Dockerイメージが消える問題を解決する
  • Docker イメージのインポートとエクスポートのコード例
  • Docker イメージのダウンロードが遅すぎる場合の解決策
  • Dockerイメージ構築原理の分析(Dockerをインストールしなくてもイメージを構築できる)
  • スクリプトを使用して、ワンクリックでDockerイメージをパッケージ化してアップロードします。
  • Dockerビルドキットを使用して、Raspberry Piで使用できるDockerイメージを構築します。
  • Dockerイメージを完全にアンインストールする手順

<<:  mysql-joinsの具体的な使用方法

>>:  CSS3 Flex エラスティックレイアウトのサンプルコードの詳細な説明

推薦する

DockerにTensorFlow環境を素早くインストールする方法

Docker に TensorFlow 環境をすばやくインストールし、TensorFlow を使用し...

jsはクリックしてカードを切り替える機能を実現します

この記事の例では、クリックしてカードを切り替える機能を実現するためのjsの具体的なコードを共有してい...

CentOS7 systemdにカスタムシステムサービスを追加する方法

システムド: CentOS 7のサービスsystemctlスクリプトは、/usr/lib/syste...

MySQL でよく使われる型変換関数の概要 (推奨)

1. Concat関数。よく使用される接続文字列: concat 関数。たとえば、SQLクエリ条件...

JavaScript ベースのシンプルな計算機の実装

この記事では、参考までに、簡単な計算機を実装するためのJavaScriptの具体的なコードを紹介しま...

MySQLのスローログの開き方と保存形式の詳細な分析

開発プロジェクトでは、MySQL のスロークエリログを通じて効率の問題のある SQL を監視できます...

JavaScript 配列と非配列オブジェクトのディープ クローンとシャロー クローンの原則の詳細な説明

目次シャロークローニングとディープクローニングとは何ですか? 1. アレイのクローンを作成する1.1...

MySQLで論理SQLを置き換える際の落とし穴を回避する方法の詳細な説明

重複キーの置換と挿入の違い置換の使用法競合がない場合、挿入と同等となり、他の列のデフォルト値が使用さ...

Vueはプルダウンとスクロールでデータを読み込む例を実装しています

目次ステップ1: インストールステップ2: 引用ステップ3: 使用Webプロジェクトでは、データを読...

Linux で boost.python を使用して C++ 動的ライブラリを呼び出す方法

序文最近、C++ 動的ライブラリをテストするためにロボット フレームワークを使い始めました。ロボット...

Dockerコマンドの学習を1つの記事にまとめる

目次導入ミラーリポジトリログイン引く押す検索ローカル画像管理画像rmiタグ建てる歴史保存負荷輸入コン...

見落とされがちなMETAタグの特殊効果(ページ遷移効果)

Web デザインで js を使用すると、多くのページ効果を実現できますが、HTML タグの META...

MySQLとPythonの相互作用の例

目次1. データを準備するデータテーブルを作成するデータの挿入2. SQLドリル1. SQL文の強化...

Javascript Bootstrapのグリッドシステム、ナビゲーションバー、カルーセルの詳細な説明

目次ブートストラップと関連コンテンツの紹介グリッドシステムネストされた列列オフセット列の並べ替えナビ...

MAC 上の MySQL の初期パスワードを忘れた場合の対処方法

MACでMySQLの初期パスワードを忘れた場合の解決策を参考までに共有します。具体的な内容は次のとお...