ミラーリングのドッカースタート基礎

ローカルがない場合、ドッキングウィンドウが自動的にドッキングウィンドウのイメージリポジトリからダウンロードするミラーを使用して、コンテナを実行する場合、デフォルトはドッカーハブパブリックイメージソースからダウンロードされます。

今、私たちは学ぶために来ます。

  • 1.管理とローカルホストミラーリングドッカーの使用
  • 2.ミラーを作成

ミラーリストを一覧表示します

我々は使用することができdocker images、ホストコンピュータ上に存在ミラーを一覧表示します。

 root@:~# docker images
 REPOSITORY         TAG        IMAGE ID     CREATED      SIZE
 alpine           latest      055936d39205   3 weeks ago    5.53MB
 mysql           5.7        7faa3c53e6d6   3 weeks ago    373MB
 ubuntu           15.04       d1b55fd07600   3 years ago    131MB
 ubuntu           16.04       2a697363a870   2 weeks ago    119MB

各オプションの説明:

  • レポジトリ:ソース画像のリポジトリを表します
  • TAG:ミラーラベル
  • 画像ID:IDミラーリング
  • CREATED:画像作成時間
  • SIZE:画像サイズ

同じウェアハウス・ソースは、Ubuntuのウェアハウス・ソースとしてウェアハウス・ソースの異なるバージョンの代わりに、複数のタグを持つことができ、いくつかの異なるバージョン16.04,15.04、等があり、我々は、リポジトリ使用:異なる画像を定義するタグ。

対応する画像出発容器内

我々はUbuntuのシステムイメージのコンテナのバージョン16.04を実行するために使用したい場合は、次のように、コマンドは次のとおりです。

root@ubuntu:~# docker run -it ubuntu:16.04 sh

あなたがUbuntuのシステムイメージのバージョン15.04を使用している場合は、次のように、コマンドは次のとおりです。

root@ubuntu:~# docker run -it ubuntu:15.04 sh

各パラメータの解析:

  • ドッキングウィンドウ:バイナリドッカーさん。
  • 実行:ドッキングウィンドウは、コンテナとの組み合わせで、実行の前に。
  • -it:-iおよび-t実際には、2つのパラメータ、-i:あなたが対話するためのコンテナに入力規格(STDIN)することができます。-t:新しいコンテナに疑似端末または端末を指定します。
  • Ubuntuの:15.04ミラーを実行するように指定、ドッカーは、まずローカルホストミラーリングから存在していない場合、ドッカーは公共の倉庫ドッカーハブのミラー・イメージからダウンロードされます、存在しています。
  • SH:コマンドを実行します。

新しい画像を入手

私たちはホストに存在しないミラーを使用する場合ドッカー自動的に画像をダウンロードします。我々は、この画像を事前にダウンロードしたい場合は、我々は使用することができdocker pull、それをダウンロードするには、コマンドを。

 root@ubuntu:~# docker pull ubuntu:18.04
 18.04: Pulling from library/ubuntu
 6abc03819f3e: Pull complete
 05731e63f211: Pull complete
 0bd67c50d6be: Pull complete
 Digest: sha256:f08638ec7ddc90065187e7eabdfac3c96e5ff0f6b2f1762cf31a4f49b53000a5
 Status: Downloaded newer image for ubuntu:18.04

ダウンロードが完了したら、我々は直接の容器を実行するには、この画像を使用することができます。

ミラーを探します

https://hub.docker.com/:私たちは、ドッカーハブのウェブサイト、ドッカーハブサイトから画像を検索することができます
我々はまた、使用することができdocker search、画像を検索するためのコマンドを。たとえば、私たちは私たちのWebサービスとしてのhttpdの鏡像を必要とします。我々はできるdocker search私達の画像を検索するためのhttpdコマンドを見つけることができます。

  • NAME:ミラーウェアハウス・ソースの名前
  • 説明:ミラーリングの説明
  • OFFICIAL:公式リリースドッカーです

ミラーリングプルのhttpd

私たちは、上記のhttpd鏡画像の正式版を使用するコマンドを使用することを決めたdocker pull画像をダウンロードします。

root@ubuntu:~# docker pull httpd
 Using default tag: latest
 latest: Pulling from library/httpd
 743f2d6c1f65: Already exists
 c92eb69846a6: Pull complete
 2211b052800a: Pull complete
 aed180197314: Pull complete
 7c472a4980a7: Pull complete
 Digest: sha256:a35ad614c1ffc6fe931f12dc42b682edbdcc62cf78d8edc41499dd90ef0f8003
 Status: Downloaded newer image for httpd:latest

ダウンロードが完了したら、私たちは、このミラーリングを使用することができます。

ミラーを作成します。

我々は我々のニーズを満たすことができないドッカミラーミラー倉庫からダウンロードしたとき、私たちは二つの方法で画像に変更を加えることができます。

  • 1.作成されたコンテナから画像を更新して、この画像を提出
  • 2. Dockerfileは、新しいイメージを作成するためのコマンド

更新画像

更新画像前に、我々は、コンテナを作成するためにミラーを使用する必要があります。

root@ubuntu:~# docker run -it ubuntu:16.04 sh

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

 # apt-get update
 Get:1 http://archive.ubuntu.com/ubuntu xenial InRelease [247 kB]
 Get:2 http://security.ubuntu.com/ubuntu xenial-security InRelease [109 kB]
 Get:3 http://archive.ubuntu.com/ubuntu xenial-updates InRelease [109 kB]
 Get:4 http://archive.ubuntu.com/ubuntu xenial-backports InRelease [107 kB]
 Get:5 http://archive.ubuntu.com/ubuntu xenial/main amd64 Packages [1558 kB]
 Get:6 http://security.ubuntu.com/ubuntu xenial-security/main amd64 Packages [844 kB]
 Get:7 http://archive.ubuntu.com/ubuntu xenial/restricted amd64 Packages [14.1 kB]
 Get:8 http://archive.ubuntu.com/ubuntu xenial/universe amd64 Packages [9827 kB]
 Get:9 http://archive.ubuntu.com/ubuntu xenial/multiverse amd64 Packages [176 kB]
 Get:10 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 Packages [1237 kB]
 Get:11 http://security.ubuntu.com/ubuntu xenial-security/restricted amd64 Packages [12.7 kB]
 Get:12 http://security.ubuntu.com/ubuntu xenial-security/universe amd64 Packages [556 kB]
 Get:13 http://archive.ubuntu.com/ubuntu xenial-updates/restricted amd64 Packages [13.1 kB]
 Get:14 http://archive.ubuntu.com/ubuntu xenial-updates/universe amd64 Packages [967 kB]
 Get:15 http://archive.ubuntu.com/ubuntu xenial-updates/multiverse amd64 Packages [19.1 kB]
 Get:16 http://archive.ubuntu.com/ubuntu xenial-backports/main amd64 Packages [7942 B]
 Get:17 http://archive.ubuntu.com/ubuntu xenial-backports/universe amd64 Packages [8532 B]
 Get:18 http://security.ubuntu.com/ubuntu xenial-security/multiverse amd64 Packages [6113 B]
 Fetched 15.8 MB in 8s (1933 kB/s)
 Reading package lists... Done

操作を完了した後、コンテナを終了するには、exitコマンドを入力します。

することによりdocker ps -a、すべてのコンテナを閲覧します:

root@ubuntu:~# docker ps -a
 CONTAINER ID   IMAGE              COMMAND        CREATED      STATUS           PORTS          NAMES
 12847d9f5071   ubuntu:16.04           "sh"          2 minutes ago   Exited (0) 43 seconds ago               peaceful_edison
 3cec6f5e47c0   httpd              "httpd-foreground"   5 minutes ago   Exited (0) 5 minutes ago               vigilant_heisenberg

この時点で、12847d9f5071コンテナIDは、我々のニーズの変化に応じてコンテナです。私たちは、commitコマンドドッキングウィンドウからコンテナのコピーを提出することができます。

root@ubuntu:~# docker commit -m="has update" -a="yeqing112" 12847d9f5071 yeqing112/ubuntu:v2
sha256:5cce1167ee4c083ff9b87e61a58081805e76d015a12a4811bd152263aa013860

様々なパラメータ:

  • -m:提出された情報の説明。
  • -a:のミラーリングを指定します。
  • 12847d9f5071:コンテナID。
  • yeqing112 / Ubuntuの:V2:作成するターゲット画像の名前を指定します。

我々は使用することができますdocker images私たちの新しいイメージを表示するコマンドをyeqing112 / Ubuntuの:V2:

root@ubuntu:~# docker images
REPOSITORY                   TAG                 IMAGE ID            CREATED             SIZE
yeqing112/ubuntu             v2                  5cce1167ee4c        2 minutes ago       144MB
ubuntu                       16.04               2a697363a870        2 weeks ago         119MB

上記の情報から、我々は以前よりもかなり大きく、更新されたイメージ、いくつかのファイルサイズを確認することができます。

ミラーの構築

上の画像の更新方法に加えて、我々はまた、コマンドを使用することができdocker build、新たなイメージを構築するためにゼロから。この目的のために、我々は我々のイメージを構築する方法ドッカーを指示する命令のセットが含まれているDockerfileファイルを作成する必要があります。

root@ubuntu:~# cat Dockerfile 
FROM    ubuntu:16.04
MAINTAINER      Fisher "[email protected]"

RUN     apt-get update

EXPOSE  22
EXPOSE  80

CMD     /bin/bash

各コマンドは、各コマンドは大文字でなければなりません接頭辞、ミラーの上に新しいレイヤーを作成します。

最初のソースを指定するためにどの画像、FROM

RUNコマンドは、ドッキングウィンドウがインストールされているものを、鏡の中のコマンドを実行するよう指示します

ここでは、まだ同じですが、実行apt-get updateupdateコマンドを

私たちは、その後を通じてDockerfileファイルを使用してdocker build -t yeqing112/ubuntu:v3新しいイメージを作成するコマンド。

root@ubuntu:~# root@ubuntu:/home# docker build -t yeqing112/ubuntu:v3 .
Sending build context to Docker daemon  422.4kB
Step 1/6 : FROM    ubuntu:16.04
 ---> 2a697363a870
Step 2/6 : MAINTAINER      Fisher "[email protected]"
 ---> Running in 92229e7a091a
Removing intermediate container 92229e7a091a
 ---> 9a89f4debc7d
Step 3/6 : RUN     apt-get update
 ---> Running in d709ef335784
Get:1 http://archive.ubuntu.com/ubuntu xenial InRelease [247 kB]
Get:2 http://security.ubuntu.com/ubuntu xenial-security InRelease [109 kB]
Get:3 http://archive.ubuntu.com/ubuntu xenial-updates InRelease [109 kB]
Get:4 http://archive.ubuntu.com/ubuntu xenial-backports InRelease [107 kB]
Get:5 http://security.ubuntu.com/ubuntu xenial-security/main amd64 Packages [844 kB]
Get:6 http://archive.ubuntu.com/ubuntu xenial/main amd64 Packages [1558 kB]
Get:7 http://archive.ubuntu.com/ubuntu xenial/restricted amd64 Packages [14.1 kB]
Get:8 http://archive.ubuntu.com/ubuntu xenial/universe amd64 Packages [9827 kB]
Get:9 http://security.ubuntu.com/ubuntu xenial-security/restricted amd64 Packages [12.7 kB]
Get:10 http://security.ubuntu.com/ubuntu xenial-security/universe amd64 Packages [556 kB]
Get:11 http://archive.ubuntu.com/ubuntu xenial/multiverse amd64 Packages [176 kB]
Get:12 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 Packages [1237 kB]
Get:13 http://archive.ubuntu.com/ubuntu xenial-updates/restricted amd64 Packages [13.1 kB]
Get:14 http://archive.ubuntu.com/ubuntu xenial-updates/universe amd64 Packages [967 kB]
Get:15 http://archive.ubuntu.com/ubuntu xenial-updates/multiverse amd64 Packages [19.1 kB]
Get:16 http://archive.ubuntu.com/ubuntu xenial-backports/main amd64 Packages [7942 B]
Get:17 http://archive.ubuntu.com/ubuntu xenial-backports/universe amd64 Packages [8532 B]
Get:18 http://security.ubuntu.com/ubuntu xenial-security/multiverse amd64 Packages [6113 B]
Fetched 15.8 MB in 5s (3051 kB/s)
Reading package lists...
Removing intermediate container d709ef335784
 ---> 540751496556
Step 4/6 : EXPOSE  22
 ---> Running in 9ae528bc083f
Removing intermediate container 9ae528bc083f
 ---> cfccc621a52d
Step 5/6 : EXPOSE  80
 ---> Running in efd88e9349c1
Removing intermediate container efd88e9349c1
 ---> 428cb5221a06
Step 6/6 : CMD     /bin/bash
 ---> Running in 2bc08b664f97
Removing intermediate container 2bc08b664f97
 ---> 9c55ea9b9ee8
Successfully built 9c55ea9b9ee8
Successfully tagged yeqing112/ubuntu:v3

パラメータ:

  • -t:作成するターゲット画像の名前を指定します。
  • 。:ファイルディレクトリDockerfile、あなたは絶対パスDockerfileを指定することができます

成功を構築した後、使用docker imagesビューミラーを:

root@ubuntu:~# docker images
REPOSITORY                   TAG                 IMAGE ID            CREATED             SIZE
yeqing112/ubuntu             v3                  9c55ea9b9ee8        9 seconds ago       144MB
yeqing112/ubuntu             v2                  5cce1167ee4c        16 minutes ago      144MB
ubuntu                       16.04               2a697363a870        2 weeks ago         119MB

上記の情報から見て、V2およびV3新たな画像ファイルのサイズが同じであり、二つのミラーのみ行われますapt-get update

ミラーリングされたラベルを設定します

我々は使用することができdocker tag、ミラーに新しいラベルを追加するには、コマンドを。

root@ubuntu:/home# docker tag 9c55ea9b9ee8 yeqing112/ubuntu:v3-1

ここでは、ミラーのドッキングウィンドウのタグID、9c55ea9b9ee8、ユーザ名、ソース名ミラー(リポジトリ名)と新しいラベル名(タグ)。

ドッキングウィンドウの画像を使用して、コマンドを見ることができ、IDは9c55ea9b9ee8 V3-1ラベルのミラーイメージ以上のものです。

root@ubuntu:/home# docker images
REPOSITORY                   TAG                 IMAGE ID            CREATED             SIZE
yeqing112/ubuntu             v3                  9c55ea9b9ee8        21 minutes ago      144MB
yeqing112/ubuntu             v3-1                9c55ea9b9ee8        21 minutes ago      144MB
yeqing112/ubuntu             v2                  5cce1167ee4c        38 minutes ago      144MB
ubuntu                       16.04               2a697363a870        2 weeks ago         119MB

おすすめ

転載: www.linuxidc.com/Linux/2019-08/160148.htm