创建容器及Docker中运行应用

$docker pull centos:latest

2.$docker images centos              查看Docker镜像

[root@docker ~]# docker images centos

REPOSITORY          TAG                IMAGE ID            CREATED            VIRTUAL SIZE

centos              latest              7322fbe74aa5        6 weeks ago        172.2 MB

3.$docker run -i -t centos /bin/bash  运行简单的bash shell来测试这个镜像创建

4.创建Docker Hub账户

这里有两种访问可以创建和注册一个Docker Hub账户:

 1.通过网站,或者

 2.通过命令行

通过网站注册

填写注册表单,选择您的用户名和密码并制定您的电子邮箱。你也可以报名参加docker邮件列表,会有很多关于docker的信息

命令登录DockerHub

$Docker login

5.在Docker中运行"Hellow wrold"

6.$Docker run centos /bin/echo 'hello world'      运行了第一个容器

7.Docker run 都运行了那些步骤    我们指定了 Docker二进制中我们想要执行的命令,run。docker run 组合运行容器,运行的镜像是centos(当指定的镜像不存在时就会从公共镜像库下载),然后执行run 创建一个容器,然后告诉Docker在新容器运行什么命令 \bin\echo,就会看到结果 hello world,如果Docker容器输入指令激活时,这里只要hello word输出,容器就会停止。

当你运行完一些命令,输入exit退出。

9.$docker run -d ubuntu:14.04 /bin/sh -c "while true; do echo hello world; sleep 1; done"

1e5535038e285177d5214659a068137486f96ee5c2e85a4ac52dc83f2ebe4147

docker但是我们指定了一个-d标识。-d标识告诉docker运行容器在后台模式运行。

这是一个荒谬的hello word进程:一个脚本会一直输出"hello word"

为什么不是我们看到的一大堆的"hello word"?而是docker返回的一个很长的字符串:

1e5535038e285177d5214659a068137486f96ee5c2e85a4ac52dc83f2ebe4147

这个长的字符串叫做容器ID。它是容器的唯一标识,所以我们可以使用它。

 注意:容器ID是有点长并且非常的笨拙,稍后我们会看到一个断点的ID,某些方面来说它是容器ID的简化版。

10.docker ps 命令必须确保容器正在运行

11.#我们可以使用docker ps -a命令来查看(无需关心容器有没有运行)。docker ps命令可以查询docker进程的所有容器。

12.[root@docker ~]# docker ps -a   

13.CONTAINER ID        IMAGE              COMMAND                CREATED            STATUS                    PORTS              NAMES

d162d83800cf        centos:latest      "/bin/bash"            2 days ago          Exited (0) 2 days ago                        reverent_mclean   

325af222cdd9        centos:latest      "/bin/echo 'hellow w  2 days ago                                                        naughty_stallman   

6452d29e7540        centos:latest      "/bin/bash echo 'hel  2 days ago          Exited (126) 2 days ago                      adoring_mccarthy   

db8321ced433        centos:latest      "/bin/bash"            2 days ago          Exited (0) 2 days ago                        silly_euclid       

a1edce86da9b        centos:latest      "/bin/bash"            2 days ago          Exited (0) 2 days ago                        angry_goodall     

41035d2328ea        centos:latest      "/bin/bash"            3 days ago          Exited (0) 3 days ago   

14.docker ps命令会返回一些有用的信息,这里包括一个短的容器ID:d162d83800cf。自动分配了名称:reverent_mclean

15.注意:docker会在容器启动的时候自动给容器命名,稍后我们可以看到我们如何给容器指定名称。

16.我们需要在我们容器内使用docker logs命令(正在运行的容器内)。

让我们给系统自动分配名称的容器使用这个命令。

$docker logs angry_goodalldocker logs  命令看起来想运行在容器内并且返回标准输出:这种情况下我们的命令输出hello word太棒了;停止这个后台进程容器。为此让我们使用docker stop命令停止。

$docker stop insane_babbagedocker stop命令会通知docker停止正在运行的容器。如果它成功了,它将返回刚刚停止的容器名称。通过docker ps命令来检查它是否还工作。  $ sudo docker ps CONTAINER ID  IMAGE        COMMAND              CREATED        STATUS      PORTS NAMES 

Docker 的详细介绍请点这里
Docker 的下载地址请点这里

猜你喜欢

转载自www.linuxidc.com/Linux/2015-08/121031.htm