zoukankan      html  css  js  c++  java
  • docker进阶之路-基础篇 | 一:环境搭建

    转载请注明作者及出处:

    作者:银河架构师

    原文链接:https://www.cnblogs.com/luas/p/12061747.html

    一、准备工作

    查看内核

    Docker 要求 CentOS 系统的内核版本高于 3.10,所以要先查看CentOS系统内核版本, 是否满足要求:

    name -r
    结果如图:
     

    由于本文系统为CentOS7.7.1908,内核满足要求。

    查看是否有旧版本:

    docker -v
    注意:如显示未找到命令、则也不能完全说明未安装docker,因为可能没有进行相关配置、没有配置成功、docker服务未启动等,都会导致此命令不可用。

    使用如下命令查看是否安装了docker及相关包:

    rpm -qa | grep docker

    如无任何信息输出,则说明未安装过docker。如出现相关包信息,则逐一删除即可:

    yum remove xxxx
    也可以使用批量删除命令:
    yum remove $(rpm -qa | grep docker)

    二、自动安装

    下载docker-ce源

    直接下载:

    #需要根据发行版选择,本文为CentOS
    wget -o /etc/yum.repos.d/docker-ce.repo https://download.docker.com/linux/centos/docker-ce.repo

    通过yum-config-manager添加:

    #安装yum-util,yum-util提供yum-config-manager功能,其它两个为devicemapper驱动依赖
    yum install -y yum-utils device-mapper-persistent-data lvm2​#添加docker-ce源yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

    安装最新版本

    使用如下命令安装最新稳定版本:

    yum install docker-ce
    注意:由于repo中默认只开启stable仓库,所以均为稳定版本。

    如果想知道安装的最新版本的版本号,则可用如下命令查看:

    yum list docker-ce
    安装特定版本

    查看所有版本:

    yum list docker-ce --showduplicates | sort -r
    结果如下:

    选择版本安装:

    yum install docker-ce-19.03.5-3.el7
    注意:前缀带有3:的,需要去掉,添加docker-ce-即可。

    三、手工安装

    下载阿里源:

    wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo

    下载rpm包

    下载地址,注意,此处同样需要根据发行版来选择,本文为CentOS,如需其它发行版安装包,则访问官方下载地址选择即可。

    可先在其它电脑下载完毕,通过ftp、ssh上传到docker主机,也可以使用wget命令在docker主机直接下载。下载地址可访问上述地址选择相关rpm包进行复制,以 docker-ce-18.03.0.ce-1.el7.centos.x86_64.rpm为例。

    wget https://download.docker.com/linux/centos/7/x86_64/stable/Packages/docker-ce-18.03.0.ce-1.el7.centos.x86_64.rpm

    安装

    使用已下载的rpm包进行安装:

    yum -y install docker-ce-18.03.0.ce-1.el7.centos.x86_64.rpm
    注意:

    如选择docker-ce19版本,则需要在安装docker前,先安装其依赖containerd.io、docker-ce-cli,因为手工安装不会自动安装相关依赖。

    此两个依赖下载地址、安装步骤可参考docker rpm包安装方法,需要特别注意的是,一定要选择对要安装的docker对应版本,如docker-ce-19.03.5,对应的docker-ce-cli版本也需为docker-ce-cli-19.03.5。如不确定相关版本,可先执行docker-ce安装,此时会安装出错,需要containerd.io、docker-ce-cli依赖包,然后根据出错信息中的依赖版本,选择下载即可。

    启动与检查

    启动:

    systemctl start docker.service

    检查安装结果:

    docker -v#或者docker --version

    显示信息如下:

    安装成功!

    开机自启动:

    systemctl enable docker.service

    其它命令:

    #重启
    systemctl restart docker.service
    
    #停止
    systemctl stop docker.service

    四、配置

    环境变量

    编辑/etc/profile,添加环境变量DOCKER_HOST=tcp://0.0.0.0:2375

    vim /etc/profile

    添加如图内容:

    编辑好以后,保存退出。

    编译/etc/profile:

    source /etc/profile

    验证:

    echo $DOCKER_HOST

    结果如图所示:

    配置成功!

    配置docker daemon

    编辑文件/etc/docker/daemon.json:

    vim /etc/docker/daemon.json

    编辑内容如下:

    {  "registry-mirrors": ["https://registry.docker-cn.com"],  "log-driver":"json-file",  "log-opts":{"max-size":"500m","max-file":"3"},  "hosts": ["tcp://0.0.0.0:2375", "unix:///var/run/docker.sock"]  }

    配置监听

    编辑文件 /usr/lib/systemd/system/docker.service:

    vim /usr/lib/systemd/system/docker.service

    编辑内容行 ExecStart=/usr/bin/dockerd.....,追加如下内容:

    -H tcp://0.0.0.0:2375 -H unix://var/run/docker.sock

    修改docker镜像默认存储路径

    编辑内容行 ExecStart=/usr/bin/dockerd.....,追加如下内容:

    --graph /usr/docker

    其中,/usr/docker 为自定义docker镜像存储路径

    重启与验证

    重新加载docker daemon:

    systemctl daemon-reload

    重启docker服务

    systemctl restart docker.service

    验证:

    docker-info

    查看输出信息

    五、安装Docker-Compose

    使用国内镜像get.daocloud.io快速下载

    curl -L https://get.daocloud.io/docker/compose/releases/download/1.23.2/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose

    添加执行权限

    chmod +x /usr/local/bin/docker-compose

    验证

    docker-compose --version

    结果如下:

    安装成功!

    微信搜索【银河架构师】,发现更多精彩内容。

    技术资料领取方法:关注公众号,回复微服务,领取微服务相关电子书;回复MK精讲,领取MK精讲系列电子书;回复JAVA 进阶,领取JAVA进阶知识相关电子书;回复JAVA面试,领取JAVA面试相关电子书,回复JAVA WEB领取JAVA WEB相关电子书。

     

  • 相关阅读:
    Java读写锁(ReentrantReadWriteLock)学习
    水平拆分和垂直拆分理解(未完)
    MySQL 主从复制
    sharding-JDBC 实现读写分离
    Linux查看程序端口占用情况
    sharding-jdbc 实现分表
    MySQL explain
    MySQL的七种join
    MySQL建立高性能索引策略
    Nginx企业级优化
  • 原文地址:https://www.cnblogs.com/luas/p/12061747.html
Copyright © 2011-2022 走看看