本文共 5559 字,大约阅读时间需要 18 分钟。
出品丨Docker公司(ID:docker-cn)
编译丨小东每周一、三、五,与您不见不散!Docker Engine v18.09.1 上个月推出了 GA。社区版和企业版用户都可以使用它。它包含了缺陷修复程序,您可以在出于一致性和兼容性原因而无法快速采用新功能的环境中使用这些缺陷修复程序。
全新的 18.09 版本是一个对于 Docker 社区版引擎和 Docker企业版引擎来说一致的发布模型。新的版本控制方案是“YY.MM.x”,其中“x”是递增的补丁版本。它们将基于相同的代码库同时发布相同的“x”版本的补丁。
2019年2月15日更新:修复 Docker 社区版引擎和 Docker企业版引擎的安全补丁
Docker Engine v18.09.1 提供了许多新功能、改进和 Bug 修复。让我们来看看在升级到 Docker 18.09.1 版本时值得注意的主要功能列表:
适用于 CE 和 EE 的 Docker Engine v18.09.2 版本均附带 containerd 1.2.2 版本。在 18.09 版本之前的 Docker 中,containerd 是由 Docker 引擎守护进程管理。在 Docker Engine 18.09 中,containerd 则是由 systemd 来管理。
让我们尝试在最新的 Ubuntu 18.10 版本的虚拟机上安装最新的 Docker 18.09.2,并尝试验证 containerd 版本:
sudo curl -sSL https://get.docker.com/ | sh# Executing docker install script, commit: 26dda3d+ sudo -E sh -c apt-get update -qq >/dev/null+ sudo -E sh -c apt-get install -y -qq apt-transport-https ca-certificates curl >/dev/null+ sudo -E sh -c curl -fsSL "https://download.docker.com/linux/ubuntu/gpg" | apt-key add -qq - >/dev/nullWarning: apt-key output should not be parsed (stdout is not a terminal)+ sudo -E sh -c echo "deb [arch=amd64] https://download.docker.com/linux/ubuntu cosmic edge" > /etc/apt/sources.list.d/docker.list+ sudo -E sh -c apt-get update -qq >/dev/null+ sudo -E sh -c apt-get install -y -qq --no-install-recommends docker-ce >/dev/null+ sudo -E sh -c docker versionClient: Version: 18.09.2 API version: 1.39 Go version: go1.10.6 Git commit: 6247962 Built: Sun Feb 10 04:13:46 2019 OS/Arch: linux/amd64 Experimental: false Server: Docker Engine - Community Engine: Version: 18.09.2 API version: 1.39 (minimum version 1.12) Go version: go1.10.6 Git commit: 6247962 Built: Sun Feb 10 03:42:13 2019 OS/Arch: linux/amd64 Experimental: falseIf you would like to use Docker as a non-root user, you should now consideradding your user to the "docker" group with something like: sudo usermod -aG docker robertsingh181 Remember that you will have to log out and back in for this to take effect! WARNING: Adding a user to the "docker" group will grant the ability to run containers which can be used to obtain root privileges on the docker host. Refer to https://docs.docker.com/engine/security/security/#docker-daemon-attack-surface for more information.@collabnix:~$ sudo usermod -aG docker robertsingh181
$sudo docker versionClient: Version: 18.09.2 API version: 1.39 Go version: go1.10.6 Git commit: 6247962 Built: Sun Feb 10 04:13:46 2019 OS/Arch: linux/amd64 Experimental: falseServer: Docker Engine - Community Engine: Version: 18.09.2 API version: 1.39 (minimum version 1.12) Go version: go1.10.6 Git commit: 6247962 Built: Sun Feb 10 03:42:13 2019 OS/Arch: linux/amd64 Experimental: false
请注意:客户端和容器运行时现在位于 Docker Engine 18.09 中守护进程的独立包中。用户应同时安装和更新这三个软件包。从而获取最新的补丁版本。
例如,在 Ubuntu 上运行“sudo apt install docker-ce docker-ce-cli containerd.io”命令。
$ sudo dpkg --list | grep containerii containerd.io 1.2.2-3 amd64 An open and reliable container runtimeii docker-ce 5:18.09.2~3-0~ubuntu-cosmic amd64 Docker: the open-source application container engineii docker-ce-cli 5:18.09.2~3-0~ubuntu-cosmic amd64 Docker CLI: the open-source application container engine
$ sudo containerd --helpNAME: containerd - __ _ ___________ ____ / /_____ _(_)___ ___ _________/ // ___/ __ \/ __ \/ __/ __ `/ / __ \/ _ \/ ___/ __ // /__/ /_/ / / / / /_/ /_/ / / / / / __/ / / /_/ /\___/\____/_/ /_/\__/\__,_/_/_/ /_/\___/_/ \__,_/high performance container runtimeUSAGE: containerd [global options] command [command options] [arguments...]VERSION: 1.2.2COMMANDS: config information on the containerd config publish binary to publish events to containerd oci-hook provides a base for OCI runtime hooks to allow arguments to be injected. help, h Shows a list of commands or help for one commandGLOBAL OPTIONS: --config value, -c value path to the configuration file (default: "/etc/containerd/config.toml") --log-level value, -l value set the logging level [trace, debug, info, warn, error, fatal, panic] --address value, -a value address for containerd's GRPC server --root value containerd root directory --state value containerd state directory --help, -h show help --version, -v print the version$ sudo ctr versionClient:Version: 1.2.2Revision: 9754871865f7fe2f4e74d43e2fc7ccd237edcbceServer:Version: 1.2.2Revision: 9754871865f7fe2f4e74d43e2fc7ccd237edcbce
因为 containerd 在 v18.09.1 版本下由 systemd 管理,所以更改“docker.service systemd”挂载设置的任何自定义配置(例如:MountFlags = slave)都会破坏 Docker 引擎的守护进程和 containerd 之间的交互,您将无法启动容器。运行以下命令获取 docker.service 的 MountFlags 当前的属性值:
sudo systemctl show --property=MountFlags docker.serviceMountFlags=
如果该命令输出的 MountFlags 为非空值,那么请更新配置,然后重启 docker 服务。
转载地址:http://rzfna.baihongyu.com/