docker的试用

docker的试用

 

docker -version:查看是否已经安装了docker;并确定docker是否正在运行?

  1. 搜索镜像文件:比如说查找名为教导的tutorial的image

 docker search tutorial

you@tutorial:~$ docker search tutorial

Found 1 results matching your query ("tutorial")

NAME                      DESCRIPTION

learn/tutorial            An image for the interactive tutorial

2.下载刚刚搜索到的image;比如说教导image的镜像文件

you@tutorial:~$ docker pull learn/tutorial

Pulling repository learn/tutorial from https://index.docker.io/v1

Pulling image 8dbd9e392a964056420e5d58ca5cc376ef18e2de93b5cc90e868a1bbc8318c1c (precise) from ubuntu

Pulling image b750fe79269d2ec9a3c593ef05b4332b1d1a02a62b4accb2c21d589ff2f5f2dc (12.10) from ubuntu

Pulling image 27cf784147099545 () from tutorial

3.使用docker run让刚刚下载的容器say hello world

you@tutorial:~$ docker run learn/tutorial echo "hello world"

hello world 

4.为刚刚的容器安装ping的安装包

you@tutorial:~$ docker run learn/tutorial apt-get install -y ping

Reading package lists...

Building dependency tree...

The following NEW packages will be installed:

  iputils-ping

0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded.

Need to get 56.1 kB of archives.

After this operation, 143 kB of additional disk space will be used.

Get:1 http://archive.ubuntu.com/ubuntu/ precise/main iputils-ping amd64 3:20101006-1ubuntu1 [56.1 kB]

debconf: delaying package configuration, since apt-utils is not installed

Fetched 56.1 kB in 1s (50.3 kB/s)

Selecting previously unselected package iputils-ping.

(Reading database ... 7545 files and directories currently installed.)

Unpacking iputils-ping (from .../iputils-ping_3%3a20101006-1ubuntu1_amd64.deb) ...

Setting up iputils-ping (3:20101006-1ubuntu1) ...

5:刚刚已经在容器中安装的ping的包;所以需要保存刚刚的修改。

首先通过docker ps -l获取刚刚得到的镜像文件。

you@tutorial:~$ docker ps -l

ID                  IMAGE               COMMAND                CREATED             STATUS              PORTS

6982a9948422        ubuntu:12.04        apt-get install ping   1 minute ago        Exit 0

然后通过docker commit  container_id

you@tutorial:~$ docker commit 6982a9948422 learn/ping

effb66b31edb

6:使用刚刚安装的ping包

you@tutorial:~$ docker run learn/ping ping www.google.com

PING www.google.com (74.125.239.129) 56(84) bytes of data.

64 bytes from nuq05s02-in-f20.1e100.net (74.125.239.148): icmp_req=1 ttl=55 time=2.23 ms

64 bytes from nuq05s02-in-f20.1e100.net (74.125.239.148): icmp_req=2 ttl=55 time=2.30 ms

64 bytes from nuq05s02-in-f20.1e100.net (74.125.239.148): icmp_req=3 ttl=55 time=2.27 ms

64 bytes from nuq05s02-in-f20.1e100.net (74.125.239.148): icmp_req=4 ttl=55 time=2.30 ms

64 bytes from nuq05s02-in-f20.1e100.net (74.125.239.148): icmp_req=5 ttl=55 time=2.25 ms

64 bytes from nuq05s02-in-f20.1e100.net (74.125.239.148): icmp_req=6 ttl=55 time=2.29 ms

64 bytes from nuq05s02-in-f20.1e100.net (74.125.239.148): icmp_req=7 ttl=55 time=2.23 ms

64 bytes from nuq05s02-in-f20.1e100.net (74.125.239.148): icmp_req=8 ttl=55 time=2.30 ms

64 bytes from nuq05s02-in-f20.1e100.net (74.125.239.148): icmp_req=9 ttl=55 time=2.35 ms

-> This would normally just keep going. However, this emulator does not support Ctrl-C, so we quit here.

     7:查询container的详细信息

you@tutorial:~$ docker inspect efefdc74a1d5

[2013/07/30 01:52:26 GET /v1.3/containers/efef/json

{

  "ID": "efefdc74a1d5900d7d7a74740e5261c09f5f42b6dae58ded6a1fde1cde7f4ac5",

  "Created": "2013-07-30T00:54:12.417119736Z",

  "Path": "ping",

  "Args": [

      "www.google.com"

  ],

  "Config": {

      "Hostname": "efefdc74a1d5",

      "User": "",

      "Memory": 0,

      "MemorySwap": 0,

      "CpuShares": 0,

      "AttachStdin": false,

      "AttachStdout": true,

      "AttachStderr": true,

      "PortSpecs": null,

      "Tty": false,

      "OpenStdin": false,

      "StdinOnce": false,

      "Env": null,

      "Cmd": [

          "ping",

          "www.google.com"

      ],

      "Dns": null,

      "Image": "learn/ping",

      "Volumes": null,

      "VolumesFrom": "",

      "Entrypoint": null

  },

  "State": {

      "Running": true,

      "Pid": 22249,

      "ExitCode": 0,

      "StartedAt": "2013-07-30T00:54:12.424817715Z",

      "Ghost": false

  },

  "Image": "a1dbb48ce764c6651f5af98b46ed052a5f751233d731b645a6c57f91a4cb7158",

  "NetworkSettings": {

      "IPAddress": "172.16.42.6",

      "IPPrefixLen": 24,

      "Gateway": "172.16.42.1",

      "Bridge": "docker0",

      "PortMapping": {

          "Tcp": {},

          "Udp": {}

      }

  },

  "SysInitPath": "/usr/bin/docker",

  "ResolvConfPath": "/etc/resolv.conf",

  "Volumes": {},

  "VolumesRW": {}

8:使用docker commit提交

猜你喜欢

转载自blog.csdn.net/jwy2014/article/details/82283863