Docker mirroring
Saat menjalankan wadah, menggunakan cermin jika tidak ada lokal, buruh pelabuhan akan secara otomatis men-download dari repositori buruh pelabuhan gambar, default-download dari sumber citra publik Docker Hub.
Sekarang kita datang untuk belajar:
- 1, manajemen dan penggunaan lokal Docker tuan mirroring
- 2, membuat cermin
Daftar cermin daftar
Kita dapat menggunakan gambar cermin buruh pelabuhan untuk daftar di host lokal.
w3big@w3big:~$ docker images REPOSITORY TAG IMAGE ID CREATED SIZE ubuntu 14.04 90d5884b1ee0 5 days ago 188 MB php 5.6 f40e9e0f10c8 9 days ago 444.8 MB nginx latest 6f8d099c3adc 12 days ago 182.7 MB mysql 5.6 f2e8d6c772c0 3 weeks ago 324.6 MB httpd latest 02ef73cf1bc0 3 weeks ago 194.4 MB ubuntu 15.10 4e3b13c8a266 4 weeks ago 136.3 MB hello-world latest 690ed74de00f 6 months ago 960 B training/webapp latest 6fae60ef3446 11 months ago 348.8 MB
Deskripsi dari setiap pilihan:
REPOSTITORY: Gudang merupakan cermin sumber
TAG: Tags Cermin
IMAGE ID: Cermin ID
DIBUAT: Cermin Dibuat
UKURAN: ukuran gambar
Sumber gudang yang sama dapat memiliki beberapa TAG, atas nama sumber gudang versi yang berbeda, seperti sumber ubuntu gudang, ada 15.10,14.04 dan banyak versi yang berbeda, kita menggunakan REPOSTITORY: TAG untuk menentukan gambar yang berbeda.
Jadi, jika kita ingin menggunakan versi 15.10 dari gambar sistem ubuntu untuk menjalankan wadah dengan perintah berikut:
w3big@w3big:~$ docker run -t -i ubuntu:15.10 /bin/bash root@d77ccb2e5cca:/#
Jika Anda ingin menggunakan versi 14,04 dari gambar sistem ubuntu untuk menjalankan wadah dengan perintah berikut:
w3big@w3big:~$ docker run -t -i ubuntu:14.04 /bin/bash root@39e968165990:/#
Jika Anda tidak menentukan versi cermin dari label, misalnya, Anda hanya menggunakan ubuntu, buruh pelabuhan akan default ubuntu: gambar terbaru.
Dapatkan cermin baru
Ketika kita menggunakan cermin yang tidak ada pada host lokal Docker otomatis akan men-download gambar. Jika kita ingin pra-men-download gambar ini, kita dapat menggunakan docker perintah tarik untuk mendownloadnya.
Cw3big@w3big:~$ docker pull ubuntu:13.10 13.10: Pulling from library/ubuntu 6599cadaf950: Pull complete 23eda618d451: Pull complete f0be3084efe9: Pull complete 52de432f084b: Pull complete a3ed95caeb02: Pull complete Digest: sha256:15b79a6654811c8d992ebacdfbd5152fcf3d165e374e264076aa435214a947a3 Status: Downloaded newer image for ubuntu:13.10
Setelah download selesai, kita bisa langsung menggunakan gambar ini untuk menjalankan wadah.
Cari Cermin
Kita dapat mencari cermin dari website Docker Hub, Docker Hub di: https://hub.docker.com/Kita juga bisa menggunakan docker perintah pencarian untuk mencari Mirror. Sebagai contoh, kita perlu cermin untuk httpd sebagai layanan web kami. Kita dapat mencari httpd pencarian perintah docker untuk menemukan cermin bagi kita.
w3big@w3big:~$ docker search httpd
NAMA: Nama sumber gudang cermin
KETERANGAN: deskripsi Mirror
RESMI: Apakah buruh pelabuhan rilis resmi
Menarik mereka Cermin
Kami memutuskan untuk menggunakan versi resmi httpd dari gambar di atas cermin, gunakan perintah buruh pelabuhan tarik untuk men-download gambar.
w3big@w3big:~$ docker pull httpd Using default tag: latest latest: Pulling from library/httpd 8b87079b7a06: Pulling fs layer a3ed95caeb02: Download complete 0d62ec9c6a76: Download complete a329d50397b9: Download complete ea7c1f032b5c: Waiting be44112b72c7: Waiting
Setelah download selesai, kita bisa menggunakan cermin.
w3big@w3big:~$ docker run httpd
Buat cermin
Ketika kita download dari mirror gudang cermin buruh pelabuhan tidak memenuhi kebutuhan kita, kita dapat gambar berikut dua cara untuk membuat perubahan.
- 1. pembaruan gambar telah dibuat dari wadah, dan mengirimkan gambar ini
- 2. petunjuk Gunakan Dockerfile untuk menciptakan citra baru
image pembaruan
Sebelum gambar pembaruan, kita perlu menggunakan cermin untuk membuat sebuah wadah.w3big@w3big:~$ docker run -t -i ubuntu:15.10 /bin/bash root@e218edb10161:/#Menggunakan apt-get perintah update dalam menjalankan kapal yang akan diperbarui.
Setelah menyelesaikan operasi, masukkan perintah exit untuk keluar wadah.
Dalam hal ini wadah ID e218edb10161 adalah wadah sesuai dengan kebutuhan kita berubah. Kami dapat mengirimkan salinan wadah melalui perintah buruh pelabuhan komit.
w3big@w3big:~$ docker commit -m="has update" -a="w3big" e218edb10161 w3big/ubuntu:v2 sha256:70bf1840fd7c0d2d8ef0a42a817eb29f854c1af8f7c59fc03ac7bdee9545aff8
Berbagai parameter:
-m: deskripsi informasi yang disampaikan
-a: Menentukan cermin Penulis
e218edb10161: Wadah ID
w3big / ubuntu: v2: Menentukan nama gambar target yang akan dibuat
Kita bisa melihat gambar baru kami w3big / ubuntu docker gambar dengan menggunakan perintah: v2:
w3big@w3big:~$ docker images REPOSITORY TAG IMAGE ID CREATED SIZE w3big/ubuntu v2 70bf1840fd7c 15 seconds ago 158.5 MB ubuntu 14.04 90d5884b1ee0 5 days ago 188 MB php 5.6 f40e9e0f10c8 9 days ago 444.8 MB nginx latest 6f8d099c3adc 12 days ago 182.7 MB mysql 5.6 f2e8d6c772c0 3 weeks ago 324.6 MB httpd latest 02ef73cf1bc0 3 weeks ago 194.4 MB ubuntu 15.10 4e3b13c8a266 4 weeks ago 136.3 MB hello-world latest 690ed74de00f 6 months ago 960 B training/webapp latest 6fae60ef3446 12 months ago 348.8 MB
Gunakan w3big gambar baru kami / ubuntu untuk memulai sebuah wadah
w3big@w3big:~$ docker run -t -i w3big/ubuntu:v2 /bin/bash root@1a9fbdeb5da3:/#
Pembangunan cermin
Kami menggunakan perintah docker membangun, dari awal untuk menciptakan citra baru. Untuk melakukan hal ini, kita perlu membuat file Dockerfile, yang berisi satu set instruksi untuk memberitahu Docker bagaimana membangun image kami.
w3big@w3big:~$ cat Dockerfile FROM centos:6.7 MAINTAINER Fisher "[email protected]" RUN /bin/echo 'root:123456' |chpasswd RUN useradd w3big RUN /bin/echo 'w3big:123456' |chpasswd RUN /bin/echo -e "LANG=\"en_US.UTF-8\"" > /etc/default/local EXPOSE 22 EXPOSE 80 CMD /usr/sbin/sshd -D
Setiap perintah akan membuat layer baru di cermin, awalan setiap perintah harus huruf besar.
Pertama FROM, menentukan cermin sumber penggunaan
RUN Run perintah memberitahu buruh pelabuhan di cermin, apa yang sudah diinstal. . .
Kami kemudian menggunakan file Dockerfile untuk membangun sebuah gambar dengan docker membangun perintah.
w3big@w3big:~$ docker build -t w3big/centos:6.7 . Sending build context to Docker daemon 17.92 kB Step 1 : FROM centos:6.7 ---> d95b5ca17cc3 Step 2 : MAINTAINER Fisher "[email protected]" ---> Using cache ---> 0c92299c6f03 Step 3 : RUN /bin/echo 'root:123456' |chpasswd ---> Using cache ---> 0397ce2fbd0a Step 4 : RUN useradd w3big ......
Parameter Deskripsi:
-t: Menentukan nama gambar target yang akan dibuat
.: Dockerfile direktori file, Anda dapat menentukan path absolut Dockerfile
Gunakan gambar buruh pelabuhan untuk melihat gambar telah dibuat dalam daftar ada, cermin ID untuk 860c279d2fec
w3big@w3big:~$ docker images REPOSITORY TAG IMAGE ID CREATED SIZE w3big/centos 6.7 860c279d2fec About a minute ago 190.6 MB w3big/ubuntu v2 70bf1840fd7c 17 hours ago 158.5 MB ubuntu 14.04 90d5884b1ee0 6 days ago 188 MB php 5.6 f40e9e0f10c8 10 days ago 444.8 MB nginx latest 6f8d099c3adc 12 days ago 182.7 MB mysql 5.6 f2e8d6c772c0 3 weeks ago 324.6 MB httpd latest 02ef73cf1bc0 3 weeks ago 194.4 MB ubuntu 15.10 4e3b13c8a266 5 weeks ago 136.3 MB hello-world latest 690ed74de00f 6 months ago 960 B centos 6.7 d95b5ca17cc3 6 months ago 190.6 MB training/webapp latest 6fae60ef3446 12 months ago 348.8 MB
Kita bisa menggunakan cermin baru untuk membuat wadah
w3big@w3big:~$ docker run -t -i w3big/centos:6.7 /bin/bash [root@41c28d18b5fb /]# id w3big uid=500(w3big) gid=500(w3big) groups=500(w3big)
Dilihat dari atas gambar baru telah dibuat yang berisi pengguna w3big kami
Mengatur tag cermin
Kita dapat menggunakan docker tag perintah untuk cermin untuk menambahkan label baru.
w3big@w3big:~$ docker tag 860c279d2fec w3big/centos:dev
buruh pelabuhan ID tag gambar, di sini adalah 860c279d2fec, nama pengguna, dan nama sumber gambar (nama repositori) dan nama tag baru (tag).
gambar Docker dapat dilihat dengan menggunakan perintah, ID adalah cermin 860c279d2fec satu label lagi.
w3big@w3big:~$ docker images REPOSITORY TAG IMAGE ID CREATED SIZE w3big/centos 6.7 860c279d2fec 5 hours ago 190.6 MB w3big/centos dev 860c279d2fec 5 hours ago 190.6 MB w3big/ubuntu v2 70bf1840fd7c 22 hours ago 158.5 MB ubuntu 14.04 90d5884b1ee0 6 days ago 188 MB php 5.6 f40e9e0f10c8 10 days ago 444.8 MB nginx latest 6f8d099c3adc 13 days ago 182.7 MB mysql 5.6 f2e8d6c772c0 3 weeks ago 324.6 MB httpd latest 02ef73cf1bc0 3 weeks ago 194.4 MB ubuntu 15.10 4e3b13c8a266 5 weeks ago 136.3 MB hello-world latest 690ed74de00f 6 months ago 960 B centos 6.7 d95b5ca17cc3 6 months ago 190.6 MB training/webapp latest 6fae60ef3446 12 months ago 348.8 MB