每天学一点Docker(5)——了解Docker架构
Docker的核心组件:
1.Docker客户端 - Client
2.Docker服务器 - Docker deamon
3.Docker镜像 - Image
4.仓库 - Registry
5.Docker容器 - Container
Docker架构图如下:

Docker采用的是C/S架构,客户端向服务器发送请求,服务器负责创建、运行和分发容器。
Docker客户端:
Docker客户端的命令如下:

Docker服务器:
Docker deamon是服务器组件,以Linux后台服务方式运行。
Docker daemon 运行在 Docker host 上,负责创建、运行、监控容器,构建、存储镜像。
默认配置下,Docker daemon 只能响应来自本地 Host 的客户端请求。如果要允许远程客户端请求,需要在配置文件中打开 TCP 监听,步骤如下:
1.编辑配置文件 /etc/systemd/system/multi-user.target.wants/docker.service,在环境变量 -H tcp://0.0.0.0,允许来自任意 IP 的客户端连接。

2.重启 Docker daemon。

3.服务器 IP 为 192.168.56.102,客户端在命令行里加上 -H 参数,即可与远程服务器通信

Docker镜像 :
可将Docker镜像看成一个只读模板。一个镜像里可能含有一个系统,或者一个Tomcat。
镜像有多种生成方法:
可以从无到有开始创建镜像
也可以下载并使用别人创建好的现成的镜像
还可以在现有镜像上创建新的镜像
我们可以将镜像的内容和创建步骤描述在一个文本文件中,这个文件被称作 Dockerfile,通过执行 docker build <docker-file> 命令可以构建出 Docker 镜像。
Docker容器:
Docker容器就是Docker运行的环境。对于软件而言,镜像像是生命周期的构建和打包阶段,容器则是启动和运行阶段。
Docker仓库Registry:
镜像有多种生成方法:
可以从无到有开始创建镜像
也可以下载并使用别人创建好的现成的镜像
还可以在现有镜像上创建新的镜像
我们可以将镜像的内容和创建步骤描述在一个文本文件中,这个文件被称作 Dockerfile,通过执行 docker build <docker-file> 命令可以构建出 Docker 镜像.
docker pull 命令是从Registry下载镜像
docker run命令是先下载镜像 然后再启动容器
下面看一个运行实例:

Docker 客户端执行
docker run命令。Docker daemon 发现本地没有 httpd 镜像。
daemon 从 Docker Hub 下载镜像。
下载完成,镜像 httpd 被保存到本地。
Docker daemon 启动容器。
docker images 可以看下已经下载到本地的镜像。

dokcer ps 可以查看哪些容器正在运行

每天学一点Docker(5)——了解Docker架构的更多相关文章
- 【每天学一点Linux】centos7 docker 启动cpu100% 飙升居高不下 无法关机 无法杀死进程
目前不知道什么原因. 重装了docker后仍然不行.安装方式为yum(在线和本地方式). 后来使用了下载static压缩包的方式来使用,就没有再出现如题的问题了.安装包地址为:https://down ...
- 每天学一点Docker(2)
容器runtime 容器runtime是容器真正运行的地方,runtime需要和操作系统kernel紧密结合,为容器提供运行环境. 比如说,java程序比作一个容器,JVM就是runtime.JVM为 ...
- 基于 Docker 的微服务架构实践
本文来自作者 未闻 在 GitChat 分享的{基于 Docker 的微服务架构实践} 前言 基于 Docker 的容器技术是在2015年的时候开始接触的,两年多的时间,作为一名 Docker 的 D ...
- centos7下安装docker(19容器架构)
What,Why,How What:什么是容器? 说起容器大家想到的是什么? 集装箱(container),虚拟机,docker,k8s 1. 没毛病,因为容器与集装箱的英文都可以翻译成co ...
- Docker Kubernetes 高可用架构设计
Docker Kubernetes 高可用架构设计 官方方案:保证master端不发生单点故障. 官方使用一台Load Balancer负载均衡代理3台master端,终端与etcd与work Nod ...
- 使用 Spring Cloud 和 Docker 构建微服务架构
如何使用Spring Boot.Spring Cloud.Docker和Netflix的一些开源工具来构建一个微服务架构. 本文通过使用Spring Boot.Spring Cloud和Docker构 ...
- 【Docker 教程】- Docker 架构
1.Docker 使用客户端-服务器 (C/S) 架构模式,使用远程API来管理和创建Docker容器. 2.Docker 容器通过 Docker 镜像来创建. 3.容器与镜像的关系类似于面向对象编程 ...
- Docker容器技术-Docker架构
一.Docker系统架构 1.Docker基础架构 1)Docker守护进程 负责容器的创建.运行和监控,以及镜像的构建和存储. docker daemon 2)Docker客户端 通过HTTP与Do ...
- Docker学习之docker架构
docker架构 解释 1.docker命令提交给docker daemon进行处理,可以拖取镜像,运行容器等等. 2.最右边的实际上是互联网的sass服务,docker daemon可以和Regis ...
随机推荐
- PHPstorm 函数时间注释的修改
正常的PHPstorm里面函数方法的注释是没有动态时间设置的,但是看了PHP file里面有时间日期的注释,而PHP Function Doc Comment 却没有,让很多PHPer很头疼,今天在搜 ...
- 【POJ3254】Corn Fields
http://poj.org/problem?id=3254 题意:给你一块n*m(0<n,m<=12)的地图,其中有的方格是肥沃的(用1表示),有的方格是贫瘠的(用0表示).现在约翰要在 ...
- C++ vector 常用API
vector: 向量容器,动态数组,类模板 定义和初始化: vector<T> v1; //v1是空vector,元素类型是T类型,执行默认初始化,int为0,string为空串 vect ...
- 8.5 filecmp--文件和文件夹比較处理
本模块主要提供了对文件和文件夹进行简单的比較处理,假设须要复杂的文件比較须要使用difflib库来处理. filecmp.cmp(f1, f2, shallow=True) 比較文件f1和文件f2,当 ...
- Windows Azure系列-- 配置Azure Power Shell
1.下载Azure Power shell https://azure.microsoft.com/en-us/documentation/articles/powershell-install-co ...
- keeplived日志位置指定
作为一个运维DBA,除了关心数据库的关键指数.还得往架构和底层基础知识多靠拢. 2010年刚工作的时候,那会Cacti监控比較流行吧.可恶的是SNMP会把默认日志写到系统日志文件中面,导致排错时非常受 ...
- Tabhost最纯净的实现方式
有时候常常使用别人用Tabhost+其他的实现demo.单纯利用Tabhost该怎样使用呢? 以下看样例: public class MainActivity extends TabActivity ...
- Struts2学习笔记整理(二)
这里是重点. Action接口 struts2 的Action可以是POJO 为了让用户开发的Action更加规范struts2提供了一个Action接口 ActionSupport基类 Struts ...
- Asp.net mvc 知多少(四)
本系列主要翻译自<ASP.NET MVC Interview Questions and Answers >- By Shailendra Chauhan,想看英文原版的可访问http:/ ...
- websocket简单实例
只需要两个文件即可,一个服务端,一个前端,一下示例为模拟简单的聊天程序: 服务端: package com.test.websocket; import java.io.IOException; im ...