
容器
Captain_zw
这个作者很懒,什么都没留下…
展开
-
【Docker】Docker架构简介
Docker架构分析Docker 是一个开放源代码的软件项目,让应用程序部署在操作系统上的工作可以自动化进行。如下图Docker架构所示,Docker软件平台包含客户端,守护进程,仓库,镜像和容器五个实体。当用户使用docker build命令时,客户端先获取Dockerfile的真实路径,然后根据用户设置的参数发送请求给守护进程,守护进程根据请求配置环境并构建镜像;当用户使用do...原创 2019-10-24 17:11:18 · 277 阅读 · 0 评论 -
【Docker】报错:Get https://registry-1.docker.io/v2/: dial tcp: lookup registry-1.docker.io: no such host
Docker Pull 镜像时报错:Get https://registry-1.docker.io/v2/: dial tcp: lookup registry-1.docker.io: no such host如下图所示:抓住结尾no such host 报错这个是因为dns域名没有解析的原因,编辑/etc/resolv.conf 文件,增加一行dns地址,例如:n...原创 2019-06-24 10:03:23 · 23552 阅读 · 1 评论 -
【Docker】报错:error pulling image configuration: ......net/http: TLS handshake timeout
Docker Pull 镜像时报错:error pulling image configuration: Get https://production.cloudflare.docker.com/registry-v2/docker/registry/v2/blobs/sha256/ca/ca96bab3e2aa5e8b7dbeef9b3197e573e7c13742b4eddbfc6473e...原创 2019-06-24 10:16:11 · 4889 阅读 · 0 评论 -
【Docker】以Overlay2存储驱动为例:分析Docker容器与镜像(底层只读镜像层+上层可读写容器层)在联合文件系统中的目录组织结构
【Docker】Docker的五种存储驱动原理及其应用场景 【Docker】容器存储管理综述【容器持久化数据管理+应用场景+与传统存储的对比】# Docker镜像与层Docker 镜像作为Docker容器的基础,由一系列层堆叠组成,每个层代表镜像的Dockerfile中的一条指令。除了最上层可写的容器层外,每个层都是只读了,且每个层与之前的层只有一部分差异。当创建并启动一个新的容器时,Do...原创 2019-07-04 21:37:24 · 2651 阅读 · 0 评论 -
【Docker】Docker之操作系统Alpine
简介Alpine Linux 操作系统是一个面向安全的轻型 Linux 发行版。它不同于通常 Linux 发行版,Alpine 采用了 musl libc 和 busybox 以减小系统的体积和运行时资源消耗,但功能上比 busybox 又完善的多,因此得到开源社区越来越多的青睐。在保持瘦身的同时,Alpine 还提供了自己的包管理工具 apk,可以通过 https://pkgs.alpi...转载 2019-07-01 11:53:31 · 619 阅读 · 0 评论 -
【Docker】核心技术介绍
Docker 核心是一个操作系统级虚拟化方法, 理解起来可能并不像 VM 那样直观。我们从虚拟化方法的四个方面:隔离性、可配额/可度量、便携性、安全性来详细介绍 Docker 的技术细节。一、隔离性:Linux Namespace (ns)每个用户实例之间相互隔离, 互不影响。 一般的硬件虚拟化方法给出的方法是 VM,而 LXC 给出的方法是 container,更细一点讲就是 kerne...原创 2019-07-24 16:33:27 · 337 阅读 · 0 评论 -
【Docker】分析Overlay2存储驱动对于镜像的目录组织结构
接上一篇: 【Docker】以Overlay2存储驱动为例:分析Docker容器与镜像(底层只读镜像层+上层可读写容器层)在联合文件系统中的目录组织结构分别依次打开Overlay2目录中的python镜像自底向上的每一层目录,如下所示:在当前镜像运行的容器中创建 a.py 文件后,commit当前镜像,并kill当前容器,去查看刚刚commit的镜像驱动。会发现前一个镜像的可写层/...原创 2019-07-17 20:52:08 · 746 阅读 · 0 评论 -
【Docker】切换存储驱动【以 Overlay2 存储驱动切换为 Aufs 存储驱动为例】
一、更改存储驱动须知在切换Docker存储驱动前,需要了解支持其所需要的Linux操作系统类型、Linux内核版本、后端文件系统、Docker版本等,确认满足需要切换的存储驱动的要求。此外,每个存储驱动都有其自身的性能特征,对比不同存储驱动所适合的应用场景,选择最适合的:aufs、overlay和overlay2的所有操作都在文件级而不是块级。这更有效地使用内存,但容器的...原创 2019-08-26 17:30:42 · 2448 阅读 · 0 评论 -
【Docker】如何在Docker容器中安装IOzone测试工具用于测试Docker存储驱动的性能
# 前言Github链接:https://github.com/acrelle/iozone-docker Dockerhub链接:https://hub.docker.com/r/acrelle/iozone在之前的博客中我已经介绍过了Docker的五种存储驱动(如下链接所示),目前Docker支持AUFS、Btrfs、Device mapper、OverlayFS、ZFS五种存储驱动。...原创 2019-07-02 10:39:10 · 444 阅读 · 0 评论 -
【Docker】什么是“ apk add --virtual ”command?
在以下“ apk add --virtual ”命令中什么是.build-deps?无法在Alpine文档中找到解释,在许多Dockerfiles中看到这个引用。RUN apk add --no-cache --virtual .build-deps \gcc \freetype-dev \musl-devRUN pip install --no-cache-dir <pac...原创 2019-07-02 09:49:00 · 9292 阅读 · 0 评论 -
【Docker】Docker的五种存储驱动原理及其应用场景
一、原理说明Docker最开始采用AUFS作为文件系统,也得益于AUFS分层的概念,实现了多个Container可以共享同一个image。但由于AUFS未并入Linux内核,且只支持Ubuntu,考虑到兼容性问题,在Docker 0.7版本中引入了存储驱动, 目前,Docker支持AUFS、Btrfs、Device mapper、OverlayFS、ZFS五种存储驱动。就如Docker官网上说...原创 2019-05-05 19:14:05 · 6059 阅读 · 0 评论 -
【Docker】容器存储管理综述【容器持久化数据管理+应用场景+与传统存储的对比】
1. 容器存储背景1.1、容器 VS 虚拟机容器技术是目前云计算中不可或缺的一部分,相比于传统虚拟机而言,容器技术在操作系统级别为虚拟化提供了一种更轻量化的选择。传统虚拟机(VM)在虚拟化硬件和主机操作系统之上通过hypervisor管理层运行客户端操作系统的完整副本,运行过程占用大量空间,限制了单台物理主机上可部署的虚拟机数量,而启动时间长使得虚拟机托管短生命周期的应用程序代价过高。下图...原创 2019-05-27 09:23:33 · 1403 阅读 · 0 评论 -
【Docker】bash: -c: line 0: syntax error near unexpected token `newline'
问题如下: docker-machine ssh myvm1 "docker swarm init --advertise-addr <myvm1 ip>"根据Docker官方文档,在使用上面docker-machine命令始化虚拟机myvm1的swarm服务时,出现报错如下图所示因为 ' < ' 和 ' > ' 是特殊字符,命令端输入命令时应该把 ...原创 2019-06-25 11:44:44 · 1309 阅读 · 0 评论 -
【Docker】Error response from daemon: rpc error: code = Unavailable
1、问题如下:创建完docker swarm将myvm3 node主机加入swarm中,执行以下命令时:#root@zzw-C6100:/var/lib/docker/service-zzw# docker-machine ssh myvm3 "docker swarm join --token SWMTKN-1-2wutdtn22qqhl53wizuo4oavlmnwc9jhg1kxp...原创 2019-06-25 16:56:08 · 5913 阅读 · 0 评论 -
【Docker】docker swarm join如何获取token?
运行 docker swarm join 时需要知道manager节点的token参数,如何知道这个参数呢?如下命令: docker swarm join-token worker原创 2019-06-25 17:02:58 · 3881 阅读 · 0 评论 -
【Docker】理解Docker原生网络架构
Docker原生网络架构Docker的网络是基于Linux的网络命名空间和虚拟网络设备(特别是veth pair)来实现。在Docker中,网络接口默认都是虚拟的接口,可以充分发挥数据在不同Docker间或Docker与宿主机转发效率。这是因为Linux通过在内核中通过数据复制实现虚拟接口之间的数据转发,即发送接口的发送缓存中的数据包将被直接复制到接收接口的接收缓存中,而无需通过外部物理网络设...转载 2019-07-01 17:37:07 · 258 阅读 · 0 评论 -
【Docker】Docker常用命令行解析
# Docker CLI ### Docker CLI ##docker container --help # List Docker CLI commandsdocker login # Log in CLI session using your Docker credentialsdocker --version # Docker versiondocker versio...原创 2019-07-01 20:11:20 · 288 阅读 · 0 评论 -
【Docker】docker build高效利用cache
# 前言Dockerfile 可以通过docker build命令构建为一个新的镜像,Dockerfile 中每一条命令都会构建出一个新的镜像层。当你重新build相同的Docker时,Docker会逐条语句check自身的cache镜像层,如果命中相同的,就使用cache而不执行这条语句继续往下逐条check直至build完成。Docker build cache相关知识可以参考docker...原创 2019-07-02 09:34:56 · 4397 阅读 · 0 评论 -
【Docker】虚拟机 vs Docker容器:有何不同?
原文:Comparing Virtual Machine vs Docker ContainerDocker常被比做一种轻量级的虚拟机,因为Docker最初的成功秘诀,正是它比虚拟机更节省内存,启动更快。Docker不停地宣传:”虚拟机需要数分钟启动,而Docker容器只需要50毫秒”。然而,Docker容器并非虚拟机,不妨来比较一下它们。1、虚拟机:使用虚拟机运行多个相互隔离的应用时...翻译 2019-04-16 15:20:47 · 472 阅读 · 0 评论