Docker使用客户端-服务器(C/S)架构模式,使用远程API来管理和创建Docker容器。

Docker容器通过Docker镜像来创建。

容器与镜像的关系类似于面向对象编程中的对象和类。

Docker 面向对象
容器 对象
镜像
Docker镜像(Image) Docker镜像是用于创建Docker容器的模板
Docker容器(Container) 容器是独立运行的一个或一组应用
Docker客户端(Clie

nt)

Docker客户端通过命令行或者其他工具使用DockerAPI与Docker的守护进程通信。
Docker主机(Host) 一个物理或者虚拟的机器用于执行Docker守护进程和容器。
Docker仓库(Registry)

Docker仓库用来保存镜像,可以理解为代码控制中的代码仓库

Docker Hub提供庞大的镜像集合公使用。

Docker Machine

Docker Machine是一个简化Docker安装的命令行工具,通过一个简单的命令行

即可在相应的平台上安装Docker,比如VirtaulBox, Digtal Ocean、Microsoft Azure。

CentOS Docker 安装

Docker支持一下的CentOS安装:

  CentOS 7(64-bit)

  CentOS 6.5 (64-bit)或更高版本

前提条件

目前,CentOS仅发行版中的内核支持Docker。

Docker运行在CentOS 7上,要求系统为64位、系统内核版本为3.10以上。

使用yum安装(CentOS下)

[root@runoob~]# uname -r

从2017年3月开始docker在原来的基础上分为两个分支版本: Docker CE 和 Docker EE。

Docker CE 即社区免费版本,Docker EE即企业版本,强调安全,但需要付费使用。

本文介绍Docker CE安装和使用:

$ 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

安装一些必要的系统工具:

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

添加软件信息源:

sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

更新yum缓存:

sudo yum makecache fast

安装Docker-CE:

sudo yum install docker-ce

 启动Docker后台服务:

sudo systemctl start docker

测试运行 hello-world:

[root@runoob ~]# docker run hello-world

由于本地没有hello-world这个镜像,所以会下载一个hello-world的镜像,并在容器内运行

使用脚本安装Docker

1、使用sudo或root权限登陆CentOS.

2、确保yum包更新到最新

sudo yum update

3、执行Docker安装脚本

curl -fsSL https://get.docker.com -o get-docker.sh
sudo sh get-docker.sh

执行这个脚本会添加docker.repo源并安装Docker。

4、启动Docker进程

sudo systemctl start docker

5、验证docker是否安装成功并在容器中执行一个测试对象

sudo docker run hello-world

到此,Docker在CentOS系统安装完成。

镜像加速

鉴于国内网络问题,后续拉取Docker镜像十分缓慢,我们可以需要配置加速器来解决,

使用的是网易的镜像地址:http://hub-mirror.c.163.com.

新版的Docker使用/etc/docker/daemon.json(Linux)或者%programdata%\docker\condfig\daemon.json(Windows)来配置Daemon。

请在改配置文件中加入(没有该文件的话,新建一个):

{
“registry-mirrors”:["http://hub-mirror.c.163.com"]
}

删除Docker CE

执行以下命令行来删除Docker CE:

sudo yum remove docker-ce
sudo rm -rf /var/lib/docker

 

Docker架构的更多相关文章

  1. Docker 架构详解 - 每天5分钟玩转容器技术(7)

    Docker 的核心组件包括: Docker 客户端 - Client Docker 服务器 - Docker daemon Docker 镜像 - Image Registry Docker 容器 ...

  2. 每天学一点Docker(5)——了解Docker架构

    Docker的核心组件: 1.Docker客户端 - Client 2.Docker服务器 - Docker deamon 3.Docker镜像 - Image 4.仓库 - Registry 5.D ...

  3. 007、Docker 架构详解(2018-12-24 周一)

    参考https://www.cnblogs.com/CloudMan6/p/6763789.html     Docker核心组件包括:       Docker 客户端   Docker Clien ...

  4. 第 2 章 容器架构 - 007 - Docker 架构详解

    Docker 的核心组件包括: Docker 客户端 - Client Docker 服务器 - Docker daemon Docker 镜像 - Image Registry Docker 容器 ...

  5. Docker源码分析(一):Docker架构

    1 背景 1.1 Docker简介 Docker是Docker公司开源的一个基于轻量级虚拟化技术的容器引擎项目,整个项目基于Go语言开发,并遵从Apache 2.0协议.目前,Docker可以在容器内 ...

  6. 1、Docker 架构详解

    本文来自clouldman ,有增删. Docker 的核心组件包括: Docker 客户端 - Client Docker 服务器 - Docker daemon Docker 镜像 - Image ...

  7. Docker 架构详解

    Docker 的核心组件包括: Docker 客户端 - Client Docker 服务器 - Docker daemon Docker 镜像 - Image Registry Docker 容器 ...

  8. Docker 架构原理及简单使用

    提示:文中有些内容为大神的博客内容,就不统一标注那里引用,只是再最下面标注参考连接谢谢 一.简介 1.了解docker的前生LXC LXC为Linux Container的简写.可以提供轻量级的虚拟化 ...

  9. Docker学习之docker架构

    docker架构 解释 1.docker命令提交给docker daemon进行处理,可以拖取镜像,运行容器等等. 2.最右边的实际上是互联网的sass服务,docker daemon可以和Regis ...

  10. [转帖]图说Docker架构的各种信息

    图说Docker架构的各种信息 2018-07-18 15:16:04作者:linux人稿源:运维之美   https://ywnz.com/linuxyffq/2344.html 介绍Docker架 ...

随机推荐

  1. 原生js创建模态框(摘自:东窗凝残月 链接:https://www.cnblogs.com/dcncy/p/9076937.html)

    <!DOCTYPE html><html><head> <meta charset="UTF-8"> <title>Te ...

  2. 如何系统学习知识图谱-15年+IT老兵的经验分享

    一.前言 就IT而言,胖子哥算是老兵,可以去猝死的年纪,按照IT江湖猿龄的规矩,也算是到了耳顺之年:而就人工智能而言,胖子哥还是新人,很老的新人,深度学习.语音识别.人脸识别,知识图谱,逐个的学习了一 ...

  3. [转]jvm调优-命令大全(jps jstat jmap jhat jstack jinfo)

    运用jvm自带的命令可以方便的在生产监控和打印堆栈的日志信息帮忙我们来定位问题!虽然jvm调优成熟的工具已经有很多:jconsole.大名鼎鼎的VisualVM,IBM的Memory Analyzer ...

  4. Webservices部署在IIS6.0上的一个小问题

    部署方式还是跟网站的部署方式一样,可是通过localhost访问一直提示400(bad request)错误. 可以在iis上预览到.在vs上引用的时候怎么都预览不到. 换个思路,把localhost ...

  5. MYSQL ERROR 2003 (HY000): Can't connect to MySQL server on '192.168.10.210' (111) 解决方法

    今天在测试MySQL的连接时候,发现连接不通过,并报错ERROR 2003 (HY000): Can't connect to mysql server on '192.168.10.210' (11 ...

  6. Linux下的文件操作——基于文件指针的文件操作(缓冲)

    目录操作 创建和删除目录: 原型为: #include <sys/stat.h> #include <sys/types.h> #include <unistd.h> ...

  7. WPF Chart

    https://quant.stackexchange.com/questions/7065/how-to-create-charts-in-wpf-finance-applications

  8. Spark+Scalar+Mysql

    包:mysql-connector-java-5.1.39-bin.jar 平台:Win8.1 环境:MyEclipse2015 hadoop-2.7.3.tar.gz + winutils.exe ...

  9. android 开发 View _6_Canvas详解

    牛逼大神的博客地址:http://www.gcssloop.com/customview/Canvas_BasicGraphics 安卓自定义View进阶-Canvas之绘制图形 在上一篇自定义Vie ...

  10. leetcode每日刷题计划-简单篇day3

    收到swe提前批面试hhh算是ep挂了的后续 努力刷题呀争取今年冲进去! Num 21 合并两个有序链表 Merge Two Sorted Lists 注意新开的链表用来输出结果的是ListNode ...