从2017年3月开始,Docker开始分为社区版本和企业版,也就是Docker CE和Docker EE, 原来Ubuntu14.04下,通过sudo apt-get install docker.io来进行安装的方式已经过时了。在这里,会详细介绍如何在ubuntu14.04 LTS下安装Docker社区版,也就是Docker CE。

在开始之前,请确保你先做好一些前期准备工作,然后开始安装Docker

前期准备工作

操作系统

安装Docker CE,你需要以下其中一种64位的Ubuntu操作系统:

  • Artful 17.10 (Docker CE 17.11 Edge only)
  • Zesty 17.04
  • $Xenial$ 16.04 (LTS)
  • Trusty 14.04 (LTS)

Docker CE 被允许安装上在 x86_64armhf, 以及 s390x (IBM z Systems) 架构之上的Ubuntu操作系统。

清理过期的Docker版本

旧版本的Docker,通常叫做docker或是docker-engine,如果他们之前被安装在操作系统中,请先进行卸载:

$ sudo apt-get remove docker docker-engine docker.io

使用apt-get查看是否还有相关包,如果没有则表示清理成功。

安装Docker CE

Docker CE有多种不同的安装模式:

  • 建议大部分的用户通过设置Docker存储库(Docker's repositories),再由储存库进行安装,这样方便安装,且容易升级。
  • 一些用户可以采用下载debian包的方式来进行手动安装和手动升级。这种做法在某些情况下会很有用,例如离线环境下安装Docker CE。
  • 在某些开发或测试环境下,部分用户可以选择采用自动化脚本来安装Docker CE。

通过repositories安装

当你第一次在一台全新机器上安装Docker CE之前,你需要先设置一下Docker的repositories。然后才可以从repositories中进行安装或升级Docker的操作。

设置repositories
  1. 升级apt源的索引信息:
$ sudo apt-get update
  1. 安装指定包,这些包可以允许apt通过HTTPS来访问repository:
$ sudo apt-get install \
apt-transport-https \
ca-certificates \
curl \
software-properties-common
  1. 添加Docker官方提供的GPG key:
$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -

通过使用apt-key finger print搜索指纹码最后8位,可以验证你在上一步所生成的指纹码应该为9DC8 5822 9FC7 DD38 854A E2D8 8D81 803C 0EBF CD88

$ sudo apt-key fingerprint 0EBFCD88

pub   4096R/0EBFCD88 2017-02-22
Key fingerprint = 9DC8 5822 9FC7 DD38 854A E2D8 8D81 803C 0EBF CD88
uid Docker Release (CE deb) <docker@docker.com>
sub 4096R/F273FCD8 2017-02-22
  1. 使用下面的命令来设置一个stable的repository,以下命令只基于X86_64平台,如需使用其他平台安装,请参阅官方文档:
$ sudo add-apt-repository \
"deb [arch=amd64] https://download.docker.com/linux/ubuntu \
$(lsb_release -cs) \
stable"
安装Docker CE
  1. 升级apt源的索引信息:
$ sudo apt-get update
  1. 安装最新版本的Docker CE,或者跳过这一步,按照第三步的方法指定安装的版本:
sudo apt-get install docker-ce

当有多个Docker的repository库的时候?

当你的机器上有多个可用的Docker repository。如果使用apt-get install或是apt-get update命令进行安装或更新操作的时候,没有指定安装的Docker版本,将总是安装这些repository中能支持的最高版本的Docker,这时请注意这是否你真正需要的版本。如果不是,请在安装时指定版本。

  1. 在真实的产品环境系统中,你可能会需要安装指定版本的Docker CE,而不是总是安装默认版本。使用下面的命令可以列出允许使用的相关版本信息:
$ apt-cache madison docker-ce

docker-ce | 17.09.0~ce-0~ubuntu | https://download.docker.com/linux/ubuntu xenial/stable amd64 Packages

命令返回结果中列举的内容依赖于系统中存在的repository,可以从返回结果中选取指定版本号来安装Docker CE。第二列是版本信息。第三列是repository的名字,标识了安装包来自于那个repository,以及当前版本的稳定性。如果要安装指定版本,把版本号添加到包名字(这里包名就是docker-ce)的后面,用(=)分隔开:

$ sudo apt-get install docker-ce=<VERSION>

安装完成后,Docker daemon(Docker服务端守护进程)会自动开始运行。

  1. 运行一个hello-world image来验证一下安装是否正确:
$ sudo docker run hello-world

运行这个命令,自动下载一个测试image,然后运行在一个container中。运行后,会打印一个消息,然后自动退出。


Hello from Docker!
This message shows that your installation appears to be working correctly. To generate this message, Docker took the following steps:
1. The Docker client contacted the Docker daemon.
2. The Docker daemon pulled the "hello-world" image from the Docker Hub.
(amd64)
3. The Docker daemon created a new container from that image which runs the
executable that produces the output you are currently reading.
4. The Docker daemon streamed that output to the Docker client, which sent it
to your terminal. To try something more ambitious, you can run an Ubuntu container with:
$ docker run -it ubuntu bash Share images, automate workflows, and more with a free Docker ID:
https://cloud.docker.com/ For more examples and ideas, visit:
https://docs.docker.com/engine/userguide/

Docker CE安装完成后,docker group会被自动创建,但是默认没有user在里面。所以你仍然需要使用sudo 来启动和运行Docker命令。可以配置Linux postinstall来允许非授权用户运行和配置Docker CE。

升级 Docker CE

如果需要升级Docker CE,首先请运行sudo apt-get update,然后安装上文所述的安装步骤,重新选择新的Docker CE版本来进行安装。

通过repository来安装Docker CE的方法到这里就结束了,下一篇会继续介绍通过package和脚本来安装Docker CE。

在Ubuntu14.04下安装Docker CE(1) - repository篇的更多相关文章

  1. Ubuntu14.04下安装docker 1.9

    有以下几种方式: 1. 通过系统自带包安装(可能不是最新版) $ sudo apt-get update $ sudo apt-get install -y docker.io $ sudo ln - ...

  2. Ubuntu14.04下安装docker

    http://www.cnblogs.com/xiaoluosun/p/5520510.html

  3. docker学习笔记(一)—— ubuntu16.04下安装docker

    docker学习笔记(一)—— ubuntu16.04下安装docker 原创 2018年03月01日 14:53:00 标签: docker / ubuntu 1682 本文开发环境为Ubuntu ...

  4. Ubuntu14.04下安装Hadoop2.5.1 (单机模式)

    本文地址:http://www.cnblogs.com/archimedes/p/hadoop-standalone-mode.html,转载请注明源地址. 欢迎关注我的个人博客:www.wuyudo ...

  5. 二、Ubuntu14.04下安装Hadoop2.4.0 (伪分布模式)

    在Ubuntu14.04下安装Hadoop2.4.0 (单机模式)基础上配置 一.配置core-site.xml /usr/local/hadoop/etc/hadoop/core-site.xml ...

  6. Ubuntu14.04下安装Flash Player

    Ubuntu14.04下安装Flash Player youhaidong@youhaidong:~$ sudo apt-get install flashplugin-nonfree [sudo] ...

  7. 详细介绍Ubuntu 16.04系统环境安装Docker CE容器的过程

    由于项目的需要,我们在很多软件配置环境中需要用到Docker容器,这个时候我们可以用自己的VPS主机搭建.在这篇文章中,笔者将会利用Ubuntu 16.04系统环境安装Docker CE容器的过程.如 ...

  8. Ubuntu14.04下 安装p4c

    参考: Github p4c README Ubuntu14.04下 安装p4c 这里提供一个直接安装p4c的脚本:install_p4c.sh. 1.git clone下来p4c: $ git cl ...

  9. Ubuntu14.04下安装Libsvm,并使用Libsvm

    (1)Ubuntu14.04下安装Libsvm 转载:https://blog.csdn.net/katrinawj/article/details/78915874 一.下载: 网址:http:// ...

随机推荐

  1. code force 403B.B. The Meeting Place Cannot Be Changed

    B. The Meeting Place Cannot Be Changed time limit per test 5 seconds memory limit per test 256 megab ...

  2. 补写:Best Coder #85 1001 Sum(前缀和)

    sum Accepts: 640 Submissions: 1744 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 131072/13107 ...

  3. 解决打开MATLAB时出现“Waring:could not read file classpath.txt”,等问题

    估计刚安装好的matlab是不会出现这个问题的,出现问题肯定是在某一次用360或者电脑管家清理垃圾之后才会出现这个问题. 首先声明我的matlab版本是matlab R2014a,下载链接:(额,网盘 ...

  4. java 中 针对数组进行的工具类

    1.遍历数组的方法: public static void printfArray(int[] arr)  2. 获取数组中最大值: public static int getMax(int[] ar ...

  5. Katana-CookieAuthenticationMiddleware-源码浅析

    准备工作 第一步,建立一个模板项目 本文从CookieAuthenticationMiddleware入手分析,首先我们来看看哪里用到了这个中间件,打开VisualStudio,创建一个Mvc项目,然 ...

  6. [转载] 常用 Java 静态代码分析工具的分析与比较

    转载自http://www.oschina.net/question/129540_23043 简介: 本文首先介绍了静态代码分析的基本概念及主要技术,随后分别介绍了现有 4 种主流 Java 静态代 ...

  7. RabbitMQ之比较好的资料

    http://mysql.taobao.org/index.php/Rabbitmq http://www.cnblogs.com/me-sa/archive/2012/10/17/rabbitmq_ ...

  8. vue-cli——vue-resource登录注册实例

    前言 使用vue-resource请求接口非常方便,在使用前需安装vue-resource依赖并在入口文件main.js中声明. 实例功能简述 本实例只有简单的两个模块:登录和注册,主要演示如何用vu ...

  9. shell中条件判断语法与判断条件小结

    1. IF条件判断语法: if Athen   dosthelif B   dosthelse   dosthfi 2. 判断条件:   2.1 字符串判断   str1 = str2 当两个串有相同 ...

  10. .net 系列:并发编程之一 并发编程的初步理论

    一.关于并发编程的几个误解 1)并发就是多线程 实际上多线程只是并发编程的一种形式而已,在C#中还有很多其他的并发编程技术,包括异步编程,并行编程,TPL数据流,响应式编程等.  2)只有大型服务器才 ...