官方正式发布 Docker 1.2.0 版本

今天(2014年8月23日),Docker官方网站正式发布了 1.2.0 版本,改进内容包括 Docker 引擎、Docker Hub 和文档。《什么是Docker?

Docker

值得关注的新特性包括:

重启策略

docker 命令增加了 --restart 参数来指定容器的重启策略,当前提供的策略包括:

  • no – 默认值,如果容器挂掉不自动重启
  • on-failure – 当容器以非 0 码退出时重启容器
    • 同时可接受一个可选的最大重启次数参数 (e.g. on-failure:5).
  • always – 不管退出码是多少都要重启

废弃了 Docker 守护进程的 --restart 参数

一些简单的例子:

  • Redis 将在容器退出时自动重启
docker run --restart=always redis
  • 如果 redis 以非 0 退出时,尝试重启 5 次
docker run --restart=on-failure:5 redis

–cap-add 和 –cap-drop

当前 Docker 容器可以得到所有的功能,或者通过一个白名单。之前可以使用  --privileged 来允许在容器中使用所有功能,这在产品环境中是不推荐使用的。而新版本引入两个参数 --cap-add--cap-drop 给你更好的控制功能使用的方法。

A few examples:

  • 更改容器接口状态
docker run --cap-add=NET_ADMIN ubuntu sh -c "ip link eth0 down"
  • 阻止使用 chown 命令
docker run --cap-drop=CHOWN ...
  • 不允许使用 mknod,其他都可以
docker run --cap-add=ALL --cap-drop=MKNOD ...

–device

在之前的版本中,你可以在一个 –privileged 容器中使用 -v 参数来绑定和安装设备,而新版本的 docker run 引入了 –device 参数可以让你在无需 –privileged 容器中使用某个设备。

Example:
  • 使用声卡
docker run --device=/dev/snd:/dev/snd ...

可写的 `/etc/hosts`, `/etc/hostname` 和 `/etc/resolv.conf`

你现在可以在容器中编辑 /etc/hosts/etc/hostname/etc/resolve.conf 配置文件。如果你需要安装 bind 或者其他需要使用到这些文件的应用的话,这个功能很有用。

注意,在 docker build 过程中对这些文件的改动是不会被保存的,改动只对运行中的容器有效。

独立进程中的 Docker 代理

Docker 用户空间代理将外部的访问路由到你的目标容器中,目前该进程已经独立开来,每个连接有一个独立的进程在运行,此举大大降低守护进程的负载,提升了稳定性和效率。

其他方面的提升和变化:

  • 当使用 docker rm -f 命令时,Docker 将会在移除容器前杀掉容器(而不是停止它),如果你需要停止容器,你必须自行运行 docker stop.
  • –dns 支持 IPv6
  • 支持私有注册条目的搜索

我们希望你能喜欢这个版本,如果有任何问题请 联系我们

了解更多

转载请注明来源:新一 » 官方正式发布 Docker 1.2.0 版本

赞 (0) 评论 (0) 分享 ()

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址