一、开始安装

第一步:   由于apt官方库里的docker版本可能比较旧,所以先卸载可能存在的旧版本:

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

第二步、更新apt包索引:

$ sudo apt-get update

第三步、  安装以下包以使apt可以通过HTTPS使用存储库(repository):

$ sudo apt-get install -y apt-transport-https ca-certificates curl software-properties-common

第四步、 添加Docker官方的GPG密钥:

$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -

第五步: 使用下面的命令来设置stable存储库:

$ sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"

第六步:     再更新一下apt包索引:

$ sudo apt-get update

第七步:    安装最新版本的Docker CE:

$ sudo apt-get install -y docker-ce

在生产系统上,可能会需要应该安装一个特定版本的Docker CE,而不是总是使用最新版本:

第八步:列出可用的版本:
            $ apt-cache madison docker-ce
选择要安装的特定版本,第二列是版本字符串,第三列是存储库名称,它指示包来自哪个存储库,以及扩展它的稳定性级别。要安装一个特定的版本,将版本字符串附加到包名中,并通过等号(=)分隔它们:

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

验证docker

    查看docker服务是否启动:

$ systemctl status docker

    1

    若未启动,则启动docker服务:

$ sudo systemctl start docker

    1

    经典的hello world:

$ sudo docker run hello-world 


二、运行报错:解决方案

昨天在使用docker 时,将 image 文件从仓库抓取到本地一直报错,经过尝试,终于得以解决。

错误信息如下:

[root@archlinux ~]# docker image pull library/hello-world
Using default tag: latest
Error response from daemon: Get https://registry-1.docker.io/v2/library/hello-world/manifests/latest: dial tcp 52.20.146.203:443: i/o timeout

或者:

[root@archlinux quanxj]# docker image pull library/hello-world
Using default tag: latest
latest: Pulling from library/hello-world
ca4f61b1923c: Pull complete
error pulling image configuration: Get https://registry-1.docker.io/v2/library/hello-world/blobs/sha256:f2a91732366c0332ccd7afd2a5c4ff2b9af81f549370f7a19acd460f87686bc7: dial tcp 35.169.231.249:443: i/o timeout

解决方法如下:
第一步:通过dig @114.114.114.114 registry-1.docker.io找到可用IP

[root@archlinux ~]# dig @114.114.114.114 registry-1.docker.io
; <<>> DiG 9.12.0 <<>> @114.114.114.114 registry-1.docker.io
; (1 server found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 37534
;; flags: qr rd ra; QUERY: 1, ANSWER: 8, AUTHORITY: 0, ADDITIONAL: 1
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
; COOKIE: 88f87a15f4ca45dc (echoed)
;; QUESTION SECTION:
;registry-1.docker.io. IN A
;; ANSWER SECTION:
registry-1.docker.io. 30 IN A 34.200.28.105
registry-1.docker.io. 30 IN A 52.22.181.254
registry-1.docker.io. 30 IN A 35.169.231.249
registry-1.docker.io. 30 IN A 52.5.185.86
registry-1.docker.io. 30 IN A 54.164.230.151
registry-1.docker.io. 30 IN A 34.200.90.16
registry-1.docker.io. 30 IN A 52.20.146.203
registry-1.docker.io. 30 IN A 52.206.156.207
;; Query time: 116 msec
;; SERVER: 114.114.114.114#53(114.114.114.114)
;; WHEN: 四 3月 08 09:27:12 CST 2018
;; MSG SIZE rcvd: 189

第二步:尝试修改/etc/hosts强制docker.io相关的域名解析到其它可用IP

vim /etc/hosts
  • 1

添加一个可用IP:

52.5.185.86 registry-1.docker.io
  • 1

保存之后重试:

[root@archlinux quanxj]# docker image pull library/hello-world
Using default tag: latest
latest: Pulling from library/hello-world
ca4f61b1923c: Already exists
Digest: sha256:083de497cff944f969d8499ab94f07134c50bcf5e6b9559b27182d3fa80ce3f7
Status: Downloaded newer image for hello-world:latest

验证:

[root@archlinux quanxj]# docker image ls
REPOSITORY TAG IMAGE ID CREATED SIZE
hello-world latest f2a91732366c 3 months ago 1.85kB 三、如果还不行,则用如下方法: [root@teddy /]# docker search ubuntu
Error response from daemon: Get https://index.docker.io/v1/search?q=ubuntu: read tcp 52.200.132.201:443: i/o timeout docker在中国已经有了仓库:https://www.docker-cn.com/registry-mirror 根据上面网站提供的修改方法。 进入/etc/docker 查看有没有 daemon.json。这是docker默认的配置文件。 如果没有新建touch daemon.json,如果有,则修改。 [root@teddy docker]# vi daemon.json
{
  "registry-mirrors": ["https://registry.docker-cn.com"]
} 保存退出。 重启docker服务 service docker restart 成功! [root@teddy docker]# docker search ubuntu
NAME                               DESCRIPTION                                     STARS     OFFICIAL   AUTOMATED
ubuntu                             The official build of ubuntu.                   3732      [OK]       
ansible/ubuntu-ansible            Ansible on ubuntu                              102                  [OK]
jdeathe/ubuntu-ssh                 ubuntu-6 6.9 x86_64 / ubuntu 7.4.1708 x8...   87                   [OK]
tutum/ubuntu                       Simple ubuntu docker image with SSH access      33                   
imagine10255/ubuntu6-lnmp-php56    ubuntu6-lnmp-php56                              31                   [OK]
gluster/gluster-ubuntu             Official GlusterFS Image [ ubuntu +  Glu...   20                   [OK]
kinogmt/ubuntu-ssh                 ubuntu with SSH                                 17                   [OK]
ubuntu/php-56-ubuntu              Platform for building and running PHP 5.6 ...   10                   
openshift/base-ubuntu             A ubuntu derived base image for Source-To...   10                   
ubuntu/python-35-ubuntu           Platform for building and running Python 3...   9                    
openshift/mysql-55-ubuntu         DEPRECATED: A ubuntu based MySQL v5.5 ima...   6                    
openshift/jenkins-2-ubuntu        A ubuntu based Jenkins v2.x image for use...   5                    
openshift/ruby-20-ubuntu          DEPRECATED: A ubuntu based Ruby v2.0 imag...   3                    
darksheer/ubuntu                   Base ubuntu Image -- Updated hourly             3                    [OK]
indigo/ubuntu-maven                Vanilla ubuntu 7 with Oracle Java Developm...   1                    [OK]
openshift/php-55-ubuntu           DEPRECATED: A ubuntu based PHP v5.5 image...   1                    
pivotaldata/ubuntu-gpdb-dev        ubuntu image for GPDB development. Tag nam...   1                    
pivotaldata/ubuntu-mingw           Using the mingw toolchain to cross-compile...   1                    
miko2u/ubuntu6                     ubuntu6 日本語環境                                   1                    [OK]
blacklabelops/ubuntu               ubuntu Base Image! Built and Updates Daily!     1                    [OK]
smartentry/ubuntu                  ubuntu with smartentry                          0                    [OK]
pivotaldata/ubuntu                 Base ubuntu, freshened up a little with a ...   0                    
openshift/wildfly-101-ubuntu     A ubuntu based WildFly v10.1 image for us...   0                    
jameseckersall/sonarr-ubuntu       Sonarr on ubuntu 7                              0                    [OK]
pivotaldata/ubuntu-gcc-toolchain   ubuntu with a toolchain, but unaffiliated ...   0                    
[root@teddy docker]#
												

ubuntu安装docker{ubuntu16.04下安装docker}的更多相关文章

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

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

  2. Ubuntu16.04下安装数据库oracle客户端

    在Ubuntu16.04下安装oracle数据库客户端,使Django项目连接到远程Oracle数据库. 1.下载oracle客户端安装包: 进入官网http://www.oracle.com/tec ...

  3. Ubuntu16.04下安装redis

    Ubuntu16.04下安装redis 保证网络畅通,选定好下载工作路径,执行以下命令下载redis-3.2.6: sudo wget http://download.redis.io/release ...

  4. ubuntu16.04下安装artoolkit5

    目前对AR技术的常见理解就是CV(Computer Vision)+CG(Computer Graphic).CV的方法很多,简单些比如FREAK+ICP(ARToolKit中的NFT),复杂些就是S ...

  5. Ubuntu16.04下安装多版本cuda和cudnn

    Ubuntu16.04下安装多版本cuda和cudnn 原文 https://blog.csdn.net/tunhuzhuang1836/article/details/79545625 前言 因为之 ...

  6. Ubuntu16.04下安装texlive

    Ubuntu 16.04下安装texlive的步骤如下: 1.下载texlive 打开终端输入:sudo apt-get install texlive-full  #下载这一过程会持续10-20分钟 ...

  7. Ubuntu16.04下安装Hadoop

    一.记录理由 刚开始只是想要学习怎么使用Hive的.想着安装应该很简单,没想到花了整整一天的时间来安装,为了避免下次犯同样的错误,特此记录. 二.安装Hadoop 网上教你怎么安装Hadoop的文章有 ...

  8. Ubuntu16.04下安装googlechrome flash 插件和安装网易云音乐

    一.ubuntu 16.04 下安装完后发现 flash无法播放没有安装flash插件因为 Adobe Flash 不再支持 linux Google 便开发了PepperFlashPlayer来替代 ...

  9. Ubuntu16.04下安装搭配Python3.6相关配置软件方法

    1 安装Python3.6.4 此处推荐直接安装Anaconda3,来实现Python3.6.4的环境配置. Anaconda3下载链接:https://www.anaconda.com/downlo ...

随机推荐

  1. centos7忘记root密码

    开机时狂点方向键下(Windows还原习惯了),或者狂点别的键.目的为了不让它进入系统. 方向键移动光标定位在第一行,按e编辑它. 在新界面找到linux16开头的行.→光标到  ro    改成rw ...

  2. LeetCode专题-Python实现之第9题:Palindrome Number

    导航页-LeetCode专题-Python实现 相关代码已经上传到github:https://github.com/exploitht/leetcode-python 文中代码为了不动官网提供的初始 ...

  3. [四] java虚拟机JVM编译器编译代码简介 字节码指令实例 代码到底编译成了什么形式

      前言简介   前文已经对虚拟机进行过了简单的介绍,并且也对class文件结构,以及字节码指令进行了详尽的说明 想要了解JVM的运行机制,以及如何优化你的代码,你还需要了解一下,java编译器到底是 ...

  4. [android]android项目的目录结构

    /**************2016年4月23更新*********************/ 相关技术: 知乎:用eclipse做Android开发,新建工程时应如何选择Android的版本? 肥 ...

  5. Java Calendar类的使用总结

    在实际项目当中,我们经常会涉及到对时间的处理,例如登陆网站,我们会看到网站首页显示XXX,欢迎您!今天是XXXX年....某些网站会记录下用户登陆的时间,比如银行的一些网站,对于这些经常需要处理的问题 ...

  6. react 源码之setState

    今天看了react源码,仅以记录. 1:monorepo (react 的代码管理方式) 与multirepo 相对. monorepo是单代码仓库, 是把所有相关项目都集中在一个代码仓库中,每个mo ...

  7. Zookeeper 分布式机器部署

    ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,是Google的Chubby一个开源的实现,是Hadoop和Hbase的重要组件.它是一个为分布式应用提供一致性服务的软件,提供的功 ...

  8. IBM Watson启示录:AI不应该仅仅是炫技

    IBM Watson启示录:AI不应该仅仅是炫技 https://mp.weixin.qq.com/s/oNp8QS7vQupbi8fr5RyLxA                         导 ...

  9. SVN系列操作(一)

    SVN是什么? SVN是Subversion的简称,是一个开放源代码的版本控制系统,常用于软件开发项目中,实现代码.文档等的历史版本保存.共享和权限管理. 进入SVN本地目录,第一步操作就是updat ...

  10. Dynamics 365-如何下载新版本的Tools

    最近新写了个Plugin,想注册到CRM中,但是使用旧版的PluginRegistration Tool的时候,总是加载不出来Plugin数据,所以寻思下载个最新版的Tool试试.现在下载Tools的 ...