如何更新aws ec2中的docker

我使用命令yum install dockerAmazon Linux AMI上安装了docker引擎。 Docker的版本是1.10 ,而yum update docker说这是最新版本。 因此,我不能在EC2中运行swarm,因为需要Docker版本1.12 。 我如何更新到最新版本(请注意解决scheme应该很容易地应用于可靠的configuration)。

更新:

对于最新的Docker引擎 ,只需键入:

 curl -fsSL https://get.docker.com/ | sh 

更新docker后,请确保您的版本正确:

 docker -v Docker version 1.12.0, build 8eab29e 

现在你需要群集更新。 用新的参数值更新群。 该命令必须以经理节点为目标。

 $ docker swarm update --cert-expiry 720h 

群更新

 Usage: docker swarm update [OPTIONS] Update the swarm Options: --cert-expiry duration Validity period for node certificates (default 2160h0m0s) --dispatcher-heartbeat duration Dispatcher heartbeat period (default 5s) --external-ca value Specifications of one or more certificate signing endpoints --help Print usage --task-history-limit int Task history retention limit (default 5) 

警告:这个命令是Docker 1.12中引入的Swarmpipe理function的一部分,可能会受到非向后兼容的更改。

资源链接:

  1. 群更新
  2. 如何configurationDocker Swarm
  3. 使用Docker 1.12,AWS EFS和Swarm模式轻松实现Docker Orchestration
  4. 在Amazon EC2上运行Docker
  5. configurationDocker Machine的Swarm集群

为了检查目的,我已经运行了命令并获得了最新版本。 我有不同的命令。 你已经使用了-sSL。 请使用-fsSL而不是-sSL

 skywalker@skywalker-PC:~$ curl -fsSL https://get.docker.com/ | sh You're using 'elementary' version 'loki'. Upstream release is 'ubuntu' version 'xenial'. [sudo] password for skywalker: .............. ............ Get:1 http://bd.archive.ubuntu.com/ubuntu xenial/universe amd64 aufs-tools amd64 1:3.2+20130722-1.1ubuntu1 [92.9 kB] Get:2 https://apt.dockerproject.org/repo ubuntu-xenial/main amd64 docker-engine amd64 1.12.3-0~xenial [19.3 MB] Get:3 http://bd.archive.ubuntu.com/ubuntu xenial/universe amd64 cgroupfs-mount all 1.2 [4,970 B] Fetched 19.4 MB in 1min 23s (233 kB/s) ........... ........... Processing triggers for ureadahead (0.100.0-19) ... + sudo -E sh -c docker version **Client: Version: 1.12.3 API version: 1.24 Go version: go1.6.3 Git commit: 6b644ec Built: Wed Oct 26 22:01:48 2016 OS/Arch: linux/amd64 Server: Version: 1.12.3 API version: 1.24 Go version: go1.6.3 Git commit: 6b644ec Built: Wed Oct 26 22:01:48 2016 OS/Arch: linux/amd64** If you would like to use Docker as a non-root user, you should now consider adding your user to the "docker" group with something like: sudo usermod -aG docker skywalker Remember that you will have to log out and back in for this to take effect! skywalker@skywalker-PC:~$ docker -v Docker version 1.12.3, build 6b644ec skywalker@skywalker-PC:~$