由于工作原因需要使用docker完成集群的搭建,特此记录一下研究的docker技术。

  首先简单的介绍一下docker:

    Docker 使用 Google 公司推出的 Go 语言 进行开发实现,基于 Linux 内核的 cgroup,namespace,以及 AUFS 类的 Union FS 等技术,对进程进行封装隔离,属于操作系统层面的虚拟化技术。由于隔离的进程独立于宿主和其它的隔离的进程,因此也称其为容器。

    优势:

      1. 更高效的利用系统资源——无需额外系统开销

      2. 更快速的启动时间——秒级启动时间

      3. 一致的运行环境

      4. 持续交付和部署

      5. 更轻松的迁移

      6. 更轻松的维护和扩展——扩展自己docker镜像

  对比普通的虚拟机:

      

  安装:

    1 windows10

        在这里我以Windows10为例进行安装操作,其他系统可以参考这个文档进行安装

      1)系统要求:

        Docker CE 支持 64 位版本的 Windows 10 Pro,且必须开启 Hyper-V。

       2)下载安装:

        官方镜像地址下载

        正常安装之后显示:

      

      3) 由于国情原因,需要进行镜像加速:      

        Docker官方和国内很多云服务商都提供了加速器服务,例如:        

          Docker 官方提供的中国registry mirror

          阿里云加速器
          DaoCloud 加速器
          注册用户并且申请加速器,会获得如 https://jxus37ad.mirror.aliyuncs.com 这样的地址。我们需要将其配置给 Docker 引擎。 

          在系统右下角托盘图标内右键菜单选择 Settings ,打开配置窗口后左侧导航菜单选择 Docker Daemon ,填写加速器地址。 

        添加加速器之后,验证是否已经生效:

          在命令行中执行docker info ,看到如下命令说明配置成功。

Registry Mirrors:
https://registry.docker-cn.com/

    

  2 windows7

    win7系统对应的docker安装包,推荐使用 Docker Toolbox 。

    1) 下载Docker Toolbox 安装包
      官方下载地址:https://github.com/boot2docker/windows-installer/releases(这个地址国内下载很慢)
      国内下载地址:
        https://get.daocloud.io/toolbox/ 或者
        http://get.daocloud.io/#install-docker-for-mac-windows

    2) 安装 Docker Toolbox

      下一步, 

    安装完成,会出现三个图标

      

    说明:

      Oracle VM VirtualBox 图标,通过它可以访问docker服务所在的linux虚拟机; 
      Docker Quickstart Terminal 图标,通过它可以启动、访问docker服务; 
      Kitematic (Alpha) 图标,可以下载一些docker镜像

    首次点击Docker Quickstart Terminal 图标,会在系统里创建一个默认的,名字叫default的虚拟机。dokcer服务启动成功的界面如下:

    

    这一步完成后,我们需要了解一个概念,就是现在我们有了两个系统,一个 windows 系统即我们直接操作的图形界面系统,我们称为主机,在主机上安装了VirtualBox,该软件内有 linux 虚拟机,称为docker主机,在 docker 主机中我们之后还会创建 linux 系统,称为容器

    

    

    3) 主机与docker主机共享文件夹

      打开Oracle VM VirtualBox,选中“正在运行”状态的 default 虚拟机,进入 设置-> 共享文件夹,添加共享文件夹,选中docker_study文件夹,勾选“自动挂载”、“固定分配”,确定。

      

        设置完成之后,重启虚拟机

    4)连接docker主机

      

docker-machine ssh default

 3. linux下的安装

  Docker 支持以下的 64 位 CentOS 版本:

  • CentOS 7
  • CentOS 8
  • 更高版本...

  设置docker仓库:

sudo yum install -y yum-utils \
device-mapper-persistent-data \
lvm2

  设置稳定的仓库:

sudo yum-config-manager \
--add-repo \
https://download.docker.com/linux/centos/docker-ce.repo

  安装安装最新版本的 Docker Engine-Community 和 containerd

sudo yum install docker-ce docker-ce-cli containerd.io

# 如果没有找到的话,可以使用非最新版本
sudo yum install -y --nobest docker-ce docker-ce-cli containerd.io

   可以安装指定版本:

  

yum list docker-ce --showduplicates | sort -r

docker-ce.x86_64  :18.09.-.el7                     docker-ce-stable
docker-ce.x86_64 :18.09.-.el7 docker-ce-stable
docker-ce.x86_64 18.06..ce-.el7 docker-ce-stable
docker-ce.x86_64 18.06..ce-.el7 docker-ce-stable sudo yum install docker-ce-<VERSION_STRING> docker-ce-cli-<VERSION_STRING> containerd.io

  

  设置自启

sudo systemctl start docker

sudo systemctl enable docker

  镜像加速

可以修改配置来使用阿里云的加速镜像源

sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://pb84l2li.mirror.aliyuncs.com"]
}
EOF sudo systemctl daemon-reload
sudo systemctl restart docker

    至此,docker环境及基本配置已经完毕。下一节,我们就来了解一下docker中常用的基本语法与命令操作。

docker技术之安装的更多相关文章

  1. 基于ASP.Net Core学习Docker技术第一步:在CentOS7安装Docker平台

    Docker技术几年前就火了,伴随着今年来devops的流行,这项技术一直被技术社区追捧.提起Docker很容易被默认为是Linux平台下的技术,.NET的技术跟他似乎没有沾边,不过那是对非.NET ...

  2. Docker 技术系列之安装多版本Mysql5.6和Mysql5.7

    大家好,后面的就不是关于MAC专有的内容,基本是跟Java环境,基础技术方面有关.所以这个教程对于在linux系统还是macOS都是通用的,不用担心. 上一篇,我们安装好对应的Docker之后,感受到 ...

  3. Docker 技术系列之安装Docker Desktop for Mac

    终于要进入到Docker技术系列了,感谢大家的持续关注. 为什么要选择Docker?因为Docker 轻巧快速,提供了可行.经济.高效的替代方案.举个例子,安装Nginx,Mysql,Redis等常用 ...

  4. 利用Docker技术实现UDP广播效果(网络编程python版)

    docker的安装见官方文档 我使用的系统为Ubuntu16.04 Ubuntu系统安装docker文档地址:https://docs.docker.com/engine/installation/l ...

  5. docker学习(1) 安装

    docker是啥就不多讲了,简言之就是更轻量.更牛叉的新一代虚拟机技术.下面是安装步骤: 一.mac/windows平台的安装 docker是在linux内核基础上发展而来的,无法直接运行在mac/w ...

  6. Docker - 技术栈

    与传统的方式类似,构建及运行Docker容器与在一台虚拟机上构建和运行程序的方式是相似的,只是使用了一套新的工具以及技术. 与虚拟机不同的是,Docker容器将宿主机与应用程序或者服务隔离,从而提高了 ...

  7. Docker版本与安装介绍

    Docker版本与安装介绍 Docker-CE 和 Docker-EE Centos 上安装 Docker-CE Ubuntu 上安装 Docker-CE Docker-CE和Docker-EE Do ...

  8. Docker技术知识点总结

    Docker技术知识点总结 本文宿主机环境Centos7.4Docker version 18.09.2, build 6247962采用国内 Daocloud 加速器---------------- ...

  9. Docker详细介绍安装与镜像制作和拉取

    一.Docker是什么? 产生背景: 开发和运维之间因为环境不同和导致的矛盾(不同的操作系统.软件环境.应用配置等)DevOps 代码.系统.环境.配置等封装成镜像Image--->运维: 集群 ...

随机推荐

  1. June 11. 2018 Week 24th, Monday

    Love is the beauty of the soul. 爱是灵魂之美. From Saint Augustine. The complete version of this quote goe ...

  2. 【Teradata】tdlocaledef修改默认日期配置

    如下所有操作需要使用root登录到TD数据库节点操作 1.获取数据库当前默认配置 //使用root登录TD数据库节点 cd /opt/teradata/tdat/tdbms/xx.xx.xx.xx/b ...

  3. Nginx使用教程(三):Nginx配置性能优化之I/O和TCP配置

    配置Nginx I/O <br\> Sendfile 当应用程序传输文件时,内核首先缓冲数据,然后将数据发送到应用程序缓冲区. 应用程序反过来将数据发送到目的地. Sendfile方法是一 ...

  4. rem实现自适应

    总结一下,rem实现自适应:用rem代替px,配合媒体查询设置font-size:n%. 首先,px是死的.若一律用px,那就会大的显得小,小的屏幕显得大.其次,rem是活的,通过设置字体大小可以引起 ...

  5. node基础—process对象(管理进程)

    process对象概述 process对象是一个全局对象,可以在任何地方都能访问到他,通过这个对象提供的属性和方法,使我们可以对当前运行的程序的进程进行访问和控制 process 对象是一个 glob ...

  6. 【BZOJ4298】[ONTAK2015]Bajtocja

    [BZOJ4298][ONTAK2015]Bajtocja Description 给定d张无向图,每张图都有n个点.一开始,在任何一张图中都没有任何边.接下来有m次操作,每次操作会给出a,b,k,意 ...

  7. PHP语言在中国的发展前景怎么样?

    PHP语言在中国的发展前景怎么样? “在互联网泛滥得今天,想要做好这一行业不是那么容易的,然而,互联网编程语言的发展PHP编程语言的出现也是赢了世界发展的潮流. PHP在我国发展也很快,越来越多的编程 ...

  8. Spring将Bean导入IOC容器

    @Import 注解可以普通类导入到 IoC容器中. 想要让一个普通类接受 Spring 容器管理,有以下方法 使用 @Bean 注解 使用 @Controller @Service @Reposit ...

  9. springboot 服务工程,前端服务调用接口报跨域错误

    前后端分离,VUE.JS调用服务接口时,跨域错误.需要服务接口工程设置,如下: @SpringBootApplicationpublic class SpringCloudOpenapiApplica ...

  10. 【转】android SDK中的ddms使用详解

    一.查看线程信息1.展开左侧设备节点,选择进程: 2.点击更新线程信息图标: 注意:如果你没有运行或调试程序的话,这些图标是不可用的! 3.右侧选择“Threads”标签: 二.查看堆栈信息1.展开左 ...