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 エラスティックレイアウトのサンプルコードの詳細な説明

推薦する

nginx は画像表示の遅さとダウンロードの不完全さの問題を解決します

前面に書かれた最近、ある読者から、ブラウザからサーバーにアクセスすると、画像の表示が遅く、ブラウザに...

MySQLデータベースの基本構文と操作

MySQLデータベースの基本構文DDL操作データベース作成構文: create database デ...

MySQL 5.7 をインストールした後にコマンドライン ウィンドウを開くとクラッシュする問題の解決方法

序文最近、MySQL 5.7 をインストールしましたが、問題が見つかりました。コマンド ライン ウィ...

Vue で CSS カスタム変数を使用する方法

目次CSS カスタム変数機能は古くから存在していますが、実際の開発ではあまり使用されていません。その...

Javascript フロントエンド最適化コード

目次if判定の最適化1. 最も簡単な方法:判断2. より良い方法: スイッチ3. より良いアプローチ...

プロフェッショナルなMySQL開発設計仕様とSQL記述仕様

チーム開発のプロセスでは、プロジェクトの安定性、コードの効率性、管理の利便性のために、内部開発および...

CSS3 のボックス サイズ設定 (コンテンツ ボックスとボーダー ボックス) の詳細な説明

CSS3 のボックス サイズ設定 (content-box と border-box) CSS3 の...

Navicat for Mysql 接続エラー 1251 (接続失敗) の問題を解決する

以前書いた内容が詳細さに欠けていたため、今回は修正・補足しました。ただし、以前の MySQL バージ...

JavaScript 手ぶれ補正のケーススタディ

原理手ぶれ補正の原理は、イベントをトリガーすることはできますが、イベントがトリガーされてから n 秒...

JSの基本概念の詳細な紹介

目次1. JSの特徴1.1 マルチパラダイム1.2 説明1.3 シングルスレッド1.4 ノンブロッキ...

CentOS7 ファイアウォール操作コマンドの完全なリスト

目次インストール: 1. ファイアウォールの基本的な使い方2. ファイアウォールd-cmdを設定する...

Baidu 入力メソッドが API を公開、自由に移植して使用できると主張

百度入力方式の担当者は、百度入力方式のオープンAPIの最大の利点は操作が便利であることであり、プラッ...

Kubernetes オブジェクトボリュームの詳細な使用方法

概要ボリュームは、さまざまなストレージ リソースを抽象化および仮想化したものです。ストレージ リソー...

MySQL Shellの紹介とインストール

目次01 レプリ​​カセットアーキテクチャ02 MySQL Shellの紹介とインストール03 My...

Vueでデータを読み取るためにこれを悪用しないでください

目次序文1. これを使用してデータ内のデータを読み取るプロセス2. Dep.target はいつ存在...