从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. Codeforces Round #386 (Div. 2) C. Tram

    C. Tram time limit per test 1 second memory limit per test 256 megabytes input standard input output ...

  2. 蓝桥杯-算法训练--ALGO-5 最短路

    问题描述 给定一个n个顶点,m条边的有向图(其中某些边权可能为负,但保证没有负环).请你计算从1号点到其他点的最短路(顶点从1到n编号). 输入格式 第一行两个整数n, m. 接下来的m行,每行有三个 ...

  3. 解决网络不可用--Using_Service_Workers

    Using_Service_Workers:https://developer.mozilla.org/zh-CN/docs/Web/API/Service_Worker_API/Using_Serv ...

  4. 一键生成koa/koa2项目:

    一键生成koa/koa2项目: 1. npm install -g koa-generator 2.新建项目目录 koa mytest (koa1项目) koa2 koa2test (koa2项目) ...

  5. 京东首页原生----js制作|css动画|js动画|计时器--轮播图(好久没更新,这两天闲的蛋疼做个京东页面分辨率1366*768,919京东,适应没调!)要文件加关注找我要哦!

  6. NFC (Near Filed Communication)

    NFC的用途:近场通信(Near Field Communication,NFC),又称近距离无线通信,是一种短距离的高频无线通信技术,允许电子设备之间进行非接触式点对点数据传输(在十厘米内)交换数据 ...

  7. js实现本地时间同步

    HTML代码 <html> <head> <title>时间</title> <meta charset="utf-8"> ...

  8. SQL server中事务的四个属性特征(ACID)

    事务的概念.类型和四个特征(ACID). 1.事务(Transaction)是并发控制的单位,是用户定义的一个操作序列.这些操作要么都做,要么都不做,是一个不可分割的工作单位. 通过事务,SQL Se ...

  9. 自己动手修改Robotium代码(上)

    Robotium作为Android自动化测试框架,还有许多不完善的地方,也不能满足测试人员的所有要求.那么,本文以四个实际中碰到的问题为例,介绍改动Robotium源码的过程. public bool ...

  10. auxblogcms1.0.6|代码审计

    这周的审计任务,两天前的任务呀~拖延症呀~ 这次审计一个博客----auxblogcms1.0.6,网上也有所记载,我下面会做个总结. axublog是一款php个人博客系统,小巧强大的PHP+MyS ...