1 docker 介绍和安装

 
 

1. docker介绍

1.1 docker产生的背景

Docker 是云时代的产物,它的诞生是一种必然。
对于云计算\云服务的相关概念,我们不会去阐述。不过如果想了解 Docker,那么必须对云服务的一些运营模式有所了解。
云服务的运营模式:
  • IaaS(基础设施即服务):经营的是基础设施,比如阿里云服务器(只安装操 作系统)
  • PaaS(平台即服务):经营的是平台,比如 MySQL 开发平台(安装在 linux 里面现成的平台)、redis 开发平台。
  • SaaS(软件即服务):经营的是软件,比如公司的OA系统(部署到远程服务 器中的 OA 软件)
Docker 就是伴随着 PaaS 产生的。

1.2 什么是docker

Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应 用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux机器上,也可以实现虚拟化,容器是完全使用沙箱机制,相互之间不会有任何接口。
docker就是一种虚拟化容器技术
通过 Docker 这种虚拟化容器技术,我们可以对物理机的资源进行更加合理有效 的利用,可以将一台物理机器虚拟化出很多个拥有完整操作系统,并且相互独立 的“虚拟计算机”。

1.3 那什么是虚拟化呢?

在计算机中,虚拟化(英语:Virtualization)是一种资源管理技术,是将计算机 的各种实体资源,如服务器、网络、内存及存储等,予以抽象、转换后呈现出来, 打破实体结构间的不可切割的障碍,使用户可以比原本的组态更好的方式来应 用这些资源。这些资源的新虚拟部分是不受现有资源的架设方式,地域或物理组 态所限制。一般所指的虚拟化资源包括计算能力和资料存储。
在实际的生产环境中,虚拟化技术主要用来解决高性能的物理硬件产能过剩和老 的旧的硬件产能过低的重组重用,透明化底层物理硬件,从而最大化的利用物理 硬件。
 
虚拟化技术种类很多,例如:软件虚拟化、硬件虚拟化、内存虚拟化、网络虚拟 化、桌面虚拟化、服务虚拟化、虚拟机等等。
最常用的虚拟化技术有:全虚拟化和操作系统(OS)虚拟化。
比如,VMware workstation 就是全虚拟化的实现。
比如,我们要讲的 Docker,就是基于操作系统虚拟化技术的一种实现。
基于操作系统创建出一些相互独立的、功能虚拟化技术有多种实现方式,有基于 硬件进行虚拟化的技术,而 Docker 只是针对操作系统进行虚拟化,对于硬件资 源的使用率更低。
  • VMware和docker的对比:
 
  1. 启动速度快,Docker 容器启动操作系统在秒级就可以完成,而 VMware 却是达到分钟级。
  2. 系统资源消耗低,一台 Linux 服务器可以运行成千上百个 Docker 容器,而VMware 大概只能同时运行 10 个左右。
  3. 更轻松的迁移和扩展,由于 Docker 容器比 VMware 占用更少的硬盘空间, 在需要搭建几套软件环境的情况下,对安装好的 Docker 容器进行迁移会更 快捷,更方便。而且 Docker 容器几乎可以在任意的平台上运行,包括虚拟 机、物理机、公有云,私有云,个人电脑等,这种兼容性,可以让用户将一 个应用程序从一个平台直接迁移到另一个平台。

1.4 docker的体系架构

  • Docker Client客户端
  • Docker Daemon守护进程
  • Docker Image镜像
  • Docker Container容器
 

1.5 docker中的概念

  • docker守护进程: docker的守护进程运行在一个主机机器中, 用户不直接和守护进程交互, 而是通过docker客户端
  • docker客户端: docker客户端是以二进制的形式出现, 是docker最基本的用户接口, 他用来接收用户的命令, 然后和docker守护进程来沟通
  • docer镜像: docker镜像就是一个可读的模板, 我们可以使用docker镜像来创建docker容器, docker提供了一个简单的机制来创建对象或者更新自己已有的镜像, 也可以从其他人那里下载一个已经做好的镜像来使用.
  • docker容器: 容器是用来运行应用的. 容器是从镜像中创建的运行实例, 它可以被启动, 开始, 停止, 删除. 每一个容器都相互隔离, 保证安全.
  • docker注册处(Registry&Repository): docker注册处保留镜像, 这些是来自于上传或者下载镜像的公众或者私有存储的地方. 公共的docer注册处由docker hub提供.
    • Registry 是集中存放镜像文件的场所
    • Repository 是对于其中的镜像进行分类管理.
    • 一个Registry中会有过个Repository, 一个Repository中会有多个不同tag的Image, 比如: 名称为centos的Repository仓库下, 有tag为6或者7的image镜像

2. 安装docker

安装之前要先关闭selinux和firewalld
systemctl disable firewalld
docker默认安装的操作系统是ubuntu.
官网有安装各种环境的指南, 请参考https://docs.docker.com/
我们主要来说一下centos7.x的安装, 因为这个在服务器上用的是最多的.
 

2.1 centos7安装新版docker

 

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

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

yum install docker-ce -y

curl -sSL https://get.daocloud.io/daotools/set_mirror.sh | sh -s http://bc437cce.m.daocloud.io# 设置docker加速器
systemctl start docker 
systemctl enable docker 
docker version #查看版本 
docker run hello-world #运行一个测试命令

 

  

 

2.2 配置镜像加速

mkdir -p /etc/docker
 [root@bogon ~]# cat /etc/docker/daemon.json 
{"registry-mirrors": ["http://hub-mirror.c.163.com"] } 

systemctl daemon-reload #重新加载服务
systemctl restart docker 
再次下载镜像的时候速度会加快

 

posted @ 2020-04-15 17:01  huningfei  阅读(241)  评论(0编辑  收藏  举报
levels of contents