$ docker images
列出本地主機(jī)上的鏡像
$ docker pull ubuntu:13.10
獲取一個(gè)新的鏡像,在本地主機(jī)上使用一個(gè)不存在的鏡像時(shí) Docker 就會(huì)自動(dòng)下載這個(gè)鏡像
$ docker search httpd
使用 docker search 命令來搜索鏡像
$ docker run httpd
運(yùn)行鏡像
$ docker commit -m="has update" -a="runoob" e218edb10161 runoob/ubuntu:v2
更新鏡像
-m:提交的描述信息
-a:指定鏡像作者
e218edb10161:容器ID
runoob/ubuntu:v2:指定要?jiǎng)?chuàng)建的目標(biāo)鏡像名
注:更新鏡像之前锈津,需要使用鏡像來創(chuàng)建一個(gè)容器
$ docker run -t -i ubuntu:15.10 /bin/bash
完成操作之后瓷产,輸入 exit命令來退出這個(gè)容器
$ docker tag 860c279d2fec runoob/centos:dev
使用 docker tag 命令硕噩,為鏡像添加一個(gè)新的標(biāo)簽
docker tag 鏡像ID舶沛,這里是 860c279d2fec ,用戶名稱罩抗、鏡像源名(repository name)和新的標(biāo)簽名(tag)
構(gòu)建鏡像:
使用命令 docker build 求摇, 從零開始來創(chuàng)建一個(gè)新的鏡像窍荧,需要?jiǎng)?chuàng)建一個(gè) Dockerfile 文件辉巡,其中包含一組指令來告訴 Docker 如何構(gòu)建鏡像。
runoob@runoob:~$ cat Dockerfile
FROM centos:6.7
MAINTAINER Fisher "fisher@sudops.com"
RUN /bin/echo 'root:123456' |chpasswd
RUN useradd runoob
RUN /bin/echo 'runoob:123456' |chpasswd
RUN /bin/echo -e "LANG="en_US.UTF-8"" >/etc/default/local
EXPOSE 22
EXPOSE 80
CMD /usr/sbin/sshd -D
每一個(gè)指令都會(huì)在鏡像上創(chuàng)建一個(gè)新的層蕊退,每一個(gè)指令的前綴都必須是大寫的郊楣。
第一條FROM,指定使用哪個(gè)鏡像源
RUN 指令告訴docker 在鏡像內(nèi)執(zhí)行命令瓤荔,安裝了什么净蚤。。茉贡。
然后塞栅,使用 Dockerfile 文件,通過 docker build 命令來構(gòu)建一個(gè)鏡像腔丧。
runoob@runoob:~$ docker build -t runoob/centos:6.7 .
Sending build context to Docker daemon 17.92 kB
Step 1 : FROM centos:6.7
---> d95b5ca17cc3
Step 2 : MAINTAINER Fisher "fisher@sudops.com"
---> Using cache
---> 0c92299c6f03
Step 3 : RUN /bin/echo 'root:123456' |chpasswd
---> Using cache
---> 0397ce2fbd0a
Step 4 : RUN useradd runoob
......
-t :指定要?jiǎng)?chuàng)建的目標(biāo)鏡像名
. :Dockerfile 文件所在目錄放椰,可以指定Dockerfile 的絕對(duì)路徑