zoukankan      html  css  js  c++  java
  • Docker安装指南

    本节目录

    • Centos

    • Ubuntu

    • Windows

    一、Centos

    • 查看内核版本是否符合要求

    •  查看内核版本
    uname -r
    • 删除旧版本(可选)
    $ sudo yum remove docker 
     docker-client 
     docker-client-latest 
     docker-common 
     docker-latest 
     docker-latest-logrotate 
     docker-logrotate 
     docker-selinux 
     docker-engine-selinux 
     docker-engine 
     docker.io
    • 1. (可选)把yum包更新到最新(生产环境慎重!yum update会对软件包和内核升级,此处只是为了排除系统环境的影响。
    yum update
    
    • 2. 安装需要的软件包, yum-util 提供yum-config-manager功能,另外两个是devicemapper驱动依赖的
    yum install -y yum-utils device-mapper-persistent-data lvm2
    
    • 3. 设置yum源
    yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
    
    [root@centos ~]# yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
      File "/usr/bin/yum-config-manager", line 135
        except yum.Errors.RepoError, e:
                                   ^
    SyntaxError: invalid syntax
    若出现这样的错误,vim /usr/bin/yum-config-manager,将首行的解释器改为python2
    
    # 添加官方数据源
    $ sudo yum-config-manager 
     --add-repo 
     https://download.docker.com/linux/centos/docker-ce.repo
    # 添加阿里云数据源
    $ sudo yum-config-manager 
     --add-repo 
     https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
    • 4. 可以查看所有仓库中所有docker版本,并选择特定版本安装
    yum list docker-ce --showduplicates | sort -r
    
    Repository epel is listed more than once in the configuration
      File "/usr/libexec/urlgrabber-ext-down", line 28
        except OSError, e:
                      ^
    SyntaxError: invalid syntax
    解决方法与步骤3类似
    
    • 5. 安装Docker,命令:yum install docker-ce-版本号,我选的是18.03.1.ce,如下: 
    yum install docker-ce-18.03.1.ce
    
    • 6. 启动Docker,命令:systemctl start docker,然后加入开机启动,如下:
    systemctl start docker
    systemctl enable docker  # 开机自启
    
    • 7. 验证安装是否成功(有client和service两部分表示docker安装启动都成功了)
    docker version
    • 8.卸载

    $ sudo yum remove docker-ce
    # delete all Images, containers, volumes, or customized configuration files
    $ sudo rm -rf /var/lib/docker

    二、Ubuntu

    更新ubuntu的apt源索引

    sudo apt-get update

    安装包允许apt通过HTTPS使用仓库

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

    添加Docker官方GPG key

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

    设置Docker稳定版仓库

    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 docker-ce

    检查Docker CE是否安装正确

    sudo docker run hello-world

    为了避免每次命令都输入sudo,可以设置用户权限,注意执行后须注销重新登录

    sudo usermod -a -G docker $USER

    安装完成Docker后,默认已经启动了docker服务,如需手动控制docker服务的启停,可执行如下命令

    # 启动docker
    sudo service docker start
    
    # 停止docker
    sudo service docker stop
    
    # 重启docker
    sudo service docker restart

    三、Windows

    首先下载好DockerToolbox.exe,官网:https://www.docker.com/ 国内镜像加速:https://get.daocloud.io/

    双击Docker Toolbox.exe, 一路点击NEXT, 安装路径我设置的是F:DockerToolbox

    img

    img

    img

    img

    img

    安装完成后,会出现如下几个图标:

    img

    双击Docker Quickstart Terminal, 如果出现如下页面,说明Docker已启动成功,后面的内容就不需要再看了。

    img

    2. 启动Docker

    • 创建docker machine

    打开power shell(如果还未安装,参考2.4),进入Docker Toolbox的安装目录,可以看到这个下面有docker-machine.exeboot2docker.isostart.sh几个文件。

    在power shell中执行如下命令:

    $ docker-machine.exe create --driver virtualbox --virtualbox-boot2docker-url=boot2docker.iso default

    输出如下:

    img

    • 启动docker-machine

    点击start.sh,会新弹出一个bash窗口,输出如下信息:

    img

    • 关闭docker machine

      执行如下命令:

    $ docker-machine.exe stop default

    注:也可以使用Oracle VM VirtualBox来关闭。Oracle VM VirtualBox是用来管理docker machine的图形界面工具,

    • 删除docker machine

      执行如下命令:

    $ docker-machine.exe rm default

    也可以使用Oracle VM VirtualBox来删除。

    3.镜像加速

    可以通过修改镜像仓库地址,加速docker 镜像的拉取。

    $ docker-machine ssh default
       ( '>')
      /) TC (   Core is distributed with ABSOLUTELY NO WARRANTY.
     (/-_--_-)           www.tinycorelinux.net
    • 设置镜像地址

    接下来执行sudo sed -i "s|EXTRA_ARGS='|EXTRA_ARGS='--registry-mirror=https://reg-mirror.qiniu.com |g" /var/lib/boot2docker/profile 此处镜像地址使用的是https://reg-mirror.qiniu.com,可自行更换。

    执行完毕后,执行exit退出。

    Administrator@ZHANG-YAFEI MINGW64 ~/Desktop
    $ docker-machine ssh default
       ( '>')
      /) TC (   Core is distributed with ABSOLUTELY NO WARRANTY.
     (/-_--_-)           www.tinycorelinux.net
    ​
    docker@default:~$ cat /var/lib/boot2docker/profile
    ​
    EXTRA_ARGS='
    --label provider=virtualbox
    ​
    '
    CACERT=/var/lib/boot2docker/ca.pem
    DOCKER_HOST='-H tcp://0.0.0.0:2376'
    DOCKER_STORAGE=overlay2
    DOCKER_TLS=auto
    SERVERKEY=/var/lib/boot2docker/server-key.pem
    SERVERCERT=/var/lib/boot2docker/server.pem
    ​
    ​
    <egistry-mirror=https://0lca06jh.mirror.aliyuncs.com |g" /var/lib/boot2docker/> docker@default:~$ cat /var/lib/boot2docker/profilele
    ​
    EXTRA_ARGS='--registry-mirror=https://0lca06jh.mirror.aliyuncs.com
    --label provider=virtualbox
    '
    CACERT=/var/lib/boot2docker/ca.pem
    DOCKER_HOST='-H tcp://0.0.0.0:2376'
    DOCKER_STORAGE=overlay2
    DOCKER_TLS=auto
    SERVERKEY=/var/lib/boot2docker/server-key.pem
    SERVERCERT=/var/lib/boot2docker/server.pem
    ​
    ​
    docker@default:~$ exit
    logout
    • 重启docker-machine

    $ docker-machine restart default
    Restarting "default"...
    (default) Check network to re-create if needed...
    (default) Windows might ask for the permission to configure a dhcp server. Sometimes, such confirmation window is minimized in the taskbar.
    (default) Waiting for an IP...
    Waiting for SSH to be available...
    Detecting the provisioner...
    Restarted machines may have new IP addresses. You may need to re-run the `docker-machine env` command.
    

     

    作者:张亚飞
    出处:https://www.cnblogs.com/zhangyafei
    gitee:https://gitee.com/zhangyafeii
    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接。
  • 相关阅读:
    Selector空轮询处理(转载)
    使用SHOW binlog events查看binlog内容
    netty 3.x 实现http server和遇到的坑
    Tomcat7启动分析(三)Digester的使用(转载)
    MySQL · 引擎特性 · 基于InnoDB的物理复制实现(转载)
    InnoDB多版本(MVCC)实现简要分析(转载)
    MySQL数据库事务各隔离级别加锁情况--read committed && MVCC(转载)
    第 4 章 序列和字符串
    BLAST在Windows系统中本地化
    Sublime text3 创建html模板
  • 原文地址:https://www.cnblogs.com/zhangyafei/p/13877522.html
Copyright © 2011-2022 走看看