thinkhk 发表于 2015-10-13 12:12:31

docker学习记录


[*]  通过docker列出所有image

docker images
[*]  查找在docker hub上的image

docker search tutorial
[*]  安装image

docker pull learn/tutorial
  出现如下错误:

INFO POST /v1.19/images/create?fromImage=learn%2Ftutorial%3Alatest

Pulling repository learn/tutorial

8dbd9e392a96: Pulling fs layer

8dbd9e392a96: Pulling image (latest) from learn/tutorial

8dbd9e392a96: Error pulling image (latest) from learn/tutorial, Server error: Status 0 while fetching image layer (8dbd9e392a964056420e5d58ca5cc376ef18e2de93b5cc90e868a1bbc8318c1c)

Error pulling image (latest) from learn/tutorial, Server error: Status 0 while fetching image layer (8dbd9e392a964056420e5d58ca5cc376ef18e2de93b5cc90e868a1bbc8318c1c)
  原因是无法访问墙外的docker hub,可添加由国内Dao cloud提供的免费快速镜像地址:

sed -i "s|other_args=|other_args=\"--registry-mirror=http://efa65984.m.daocloud.io\" |g" /etc/sysconfig/docker
service docker restart
[*]  容器中运行命令
  我们之前下载的tutorial镜像是基于ubuntu的,所以你可以使用ubuntu的apt-get命令来安装ping程序:apt-get install -y ping

docker run learn/tutorial echo "hello word"
[*]  保存对容器的修改
  首先使用docker ps -l命令获得安装完ping命令之后容器的id。然后把这个镜像保存为learn/ping。

# docker ps -l
CONTAINER ID      IMAGE               COMMAND             CREATED            STATUS                        PORTS               NAMES
7369c839f98b      learn/tutorial      "which ping"      About a minute ago   Exited (1) About a minute ago                     boring_bartik
  运行docker commit, 指定容器ID,通常指定前3到4个字母即可

# docker commit 7369 learn/ping
821faebd2f517b8365e3813d383a78f8c20bcda8278a9da0bf459c14f87484f5
  执行完docker commit命令之后,会返回新版本镜像的id号

[*]  运行新镜像

docker run lean/ping ping www.baidu.com
[*]  查找镜像
  查找正在运行的镜像

docker ps
  查找最近的镜像

docker ps -l
[*]  检查镜像

docker inspect 镜像ID
[*]  发布镜像

会发布到docker hub自己的空间下面

docker push learn/ping

版权声明:本文为博主原创文章,未经博主允许不得转载。
页: [1]
查看完整版本: docker学习记录