Docker
@Limerence
加油加油加油!!
展开
-
Docker学习(1)——几张图快速了解Docker
前言在计算机技术日新月异的今天, Docker 在国内发展的如火如荼,特别是在一线互联网公司, Docker 的使用是十分普遍的,甚至成为了一些企业面试的加分项;这篇文章希望能够帮助读者简单了解Docker,深入理解Docker的命令,还有容器(container)和镜像(image)之间的区别,并深入探讨容器和运行中的容器之间的区别。既然说了这么多, docker 到底是个什么东西呢?我...原创 2019-06-19 17:05:18 · 669 阅读 · 1 评论 -
Docker安全加固——利用LXCFS增强docker容器隔离性和资源可见性
前言lxcfs是一个开源的FUSE(用户态文件系统)实现来支持LXC容器。LXCFS通过用户态文件系统,在容器中提供下列 procfs 的文件:/proc/cpuinfo/proc/diskstats/proc/meminfo/proc/stat/proc/swaps/proc/uptime比如,把宿主机的 /var/lib/lxcfs/proc/memoinfo 文件挂载到...原创 2019-07-15 16:33:23 · 745 阅读 · 0 评论 -
rehl7.3部署K8s集群
前言官方中文文档: http://docs.kubernetes.org.cn/Kubernetes组成Kubernetes节点有运行应用容器必备的服务,而这些都是受Master的控制。每个节点上都要运行Docker。Docker来负责所有具体的映像下载和容器运行。Kubernetes主要由以下几个核心组件组成:etcd:保存了整个集群的状态;apiserver:提供了资源...原创 2019-07-14 22:48:51 · 365 阅读 · 0 评论 -
论Docker swarm与Kubernetes孰强孰弱
前言有无数的辩论和讨论谈论Kubernetes和Docker。如果你没有深入研究,你会认为这两种开源技术都在争夺集装箱至上。让我们明确指出,Kubernetes和Docker Swarm不是竞争对手!两者都各有利弊,可根据您的应用要求使用。在本文中,有关这些问题的更多信息:Kubernetes和Docker如何改变软件开发的时代?它如何彻底改变了DevOps咨询的方式?虽然它们不同,...原创 2019-07-14 19:49:40 · 1280 阅读 · 0 评论 -
Docker swarm集群详解(二)——集群搭建,拉伸,缩减与集群监控
实验环境主机ipserver1(manager)172.25.66.1server2(node)172.25.66.2server3(node)172.25.66.3物理机(用来测试)172.25.66.250一、Docker swarm集群的搭建1.在管理节点server1上初始化swarm集群[root@server1 ~]# dock...原创 2019-07-14 19:06:40 · 598 阅读 · 0 评论 -
Docker swarm集群详解(一)
一、简介Swarm是Docker官方提供的一款集群管理工具,其主要作用是把若干台Docker主机抽象为一个整体,并且通过一个入口统一管理这些Docker主机上的各种Docker资源。Swarm和Kubernetes比较类似,但是更加轻,具有的功能也较kubernetes更少一些。Swarm的基本架构如下图所示这个图作为一个整体实际上都处于一个所谓的集群中,它可能对应了一到多台的实际服务器。...原创 2019-07-14 14:25:52 · 1559 阅读 · 0 评论 -
Docker compose多容器管理
前言Docker Compose 将所管理的容器分为三层,工程(project),服务(service)以及容器(contaienr)。Docker Compose 运行的目录下的所有文件(docker-compose.yml, extends 文件或环境变量文件等)组成一个工程,若无特殊指定工程名即为当前目录名。一个工程当中可包含多个服务,每个服务中定义了容器运行的镜像,参数,依赖。一个服务...原创 2019-07-14 14:05:26 · 573 阅读 · 0 评论 -
Docker数据卷管理
前言docker数据卷数据卷是目录或文件,不是块设备。容器可以读写volume中的数据。volume数据可以持久化保存。docker提供了两种卷:bind mount 是将主机上的目录或文件mount到容器里。 使用直观高效,易于理解。 使用 -v 选项指定路径,格式 <host path>:<container path> bind m...原创 2019-07-04 19:31:50 · 337 阅读 · 0 评论 -
Docker网络——实现容器间通信、容器与外网通信以及容器的跨主机访问
前言自定义网络建议使用自定义的网桥来控制哪些容器可以相互通信,还可以自动DNS解析容器名称到IP地址。Docker提供了创建这些网络的默认网络驱动程序,你可以创建一个新的Bridge网络,Overlay或Macvlan网络。你还可以创建一个网络插件或远程网络进行完整的自定义和控制。你可以根据需要创建任意数量的网络,并且可以在任何给定时间将容器连接到这些网络中的零个或多个网络。此外,您可以...原创 2019-07-03 11:36:47 · 17087 阅读 · 2 评论 -
Docker网络详解——原理篇
前言当你开始大规模使用Docker时,你会发现需要了解很多关于网络的知识。Docker作为目前最火的轻量级容器技术,有很多令人称道的功能,如Docker的镜像管理。然而,Docker同样有着很多不完善的地方,网络方面就是Docker比较薄弱的部分。因此,我们有必要深入了解Docker的网络知识,以满足更高的网络需求。本文首先介绍了Docker自身的4种网络工作方式,然后介绍一些自定义网络模式。...原创 2019-07-02 23:24:10 · 37229 阅读 · 10 评论 -
Dockerfile镜像优化方案指引
前言镜像的优化注意几条:选择最精简的基础镜像减少镜像的层数清理镜像构建的中间产物注意优化网络请求尽量去用构建缓存使用多阶段构建镜像接下来我们以rhel7镜像构建容器,并在容器中安装nginx的源码包。以此容器构建新的镜像并做做优化1.软件准备[root@server1 docker]# pwd/tmp/docker[root@server1 docker]# ls...原创 2019-07-02 21:48:47 · 1460 阅读 · 0 评论 -
Docker学习(8)——构建镜像(Dockerfile、commit)
前言在前面的文章里我们已经详细介绍了构建镜像的两种常用方式,下面我们将具体看看如何实际操作,以及镜像的优化方式。一、commit封装镜像以ubuntu的镜像为例:1.导入ubuntu镜像[root@server1 ~]# docker load -i ubuntu.tar 56abdd66ba31: Loading layer [============================...原创 2019-07-02 19:31:33 · 452 阅读 · 0 评论 -
Docker学习(7)——常用的镜像构建方式简介
前言镜像镜像是一种文件结构,包含如何运行容器的元数据。Dockerfile中的每条命令都会在文件系统中创建一个新的层次结构,文件系统在这些层次上构建起来,镜像就构建于这些联合的文件系统之上。当容器启动后,所有镜像都会统一合并到一个进程中。 联合文件系统中的文件被删除时, 它们只是被标记为已删除,但实际上仍然存在。镜像的分层结构共享宿主机的kernelbase镜像提供的是最小的Linux...原创 2019-06-21 20:42:28 · 838 阅读 · 0 评论 -
Docker学习(6)——registry私有仓库工作原理(续)
前言我们在前文中讲了如何搭建私有仓库,并且为私有仓库加密、添加简单的图形界面;因为篇幅限制,我们将在本文中补充registry工作原理情景A:用户要获取并下载镜像。情景A:具体工作流程如下:用户发送请求到index来下载镜像。index 响应返回三个相关部分信息:该镜像位于的registry该镜像包括所有层的校验以授权目的Token用户通过响应中返回的Token和regist...原创 2019-06-21 14:42:58 · 585 阅读 · 0 评论 -
Docker学习(5)——创建私有仓库,为私有仓库添加web界面
一、什么是Docker 仓库?仓库是集中存放镜像文件的场所。有时候会把仓库和仓库注册服务器(Registry)混为一谈,并不严格区分。实际上,仓库注册服务器上往往存放着多个仓库,每个仓库中又包含了多个镜像,每个镜像有不同的标签(tag)。仓库分为公开仓库(Public)和私有仓库(Private)两种形式。最大的公开仓库是 Docker Hub,存放了数量庞大的镜像供用户下载。 国内的公开仓库...原创 2019-06-21 02:27:44 · 608 阅读 · 0 评论 -
Docker学习(4)——如何从阿里云拉取镜像
前言虽然我们之前说过docker的三大概念:镜像、容器和仓库,这里再把镜像的概念提出来聊一聊什么是Docker镜像?Docker镜像是由文件系统叠加而成。最底端是一个文件引导系统,即bootfs。Docker用户不会与引导文件系统有直接的交互。Docker镜像的第二层是root文件系统rootfs,通常是一种或多种操作系统,例如ubuntu等。在Docker中,文件系统永远都是只读的,在每...原创 2019-06-19 23:16:17 · 13953 阅读 · 3 评论 -
Docker学习(3)——安装部署过程及简单应用
一、 Docker的部署与安装1.安装docker和相关依赖性[root@server1 docker]# lscontainer-selinux-2.21-1.el7.noarch.rpmdocker-ce-18.06.1.ce-3.el7.x86_64.rpmlibsemanage-2.5-8.el7.x86_64.rpmlibsemanage-python-2.5-8.el7.x...原创 2019-06-19 19:43:38 · 397 阅读 · 0 评论 -
Docker学习(2)——图文并茂讲解Docker基础命令
一、Docker基础命令总结命令功能docker load -i ubuntu.tar导入镜像docker run -it --name vm1 ubuntu创建容器(以ubuntu镜像为模板)docker ps查看容器状态docker ps -a查看容器状态(包括不活跃的容器)docker attach vm1连接容器docker t...原创 2019-06-19 17:17:49 · 423 阅读 · 1 评论 -
Docker安全性支持(使用Cgroups机制实现容器资源控制)
前言Docker作为最重视安全的容器技术之一,在很多方面都提供了强安全性的默认配置,其中包括:容器root用户的Capability能力限制、Seccomp系统调用过滤、Apparmor的 MAC 访问控制、ulimit限制、pid-limits的支持,镜像签名机制等。这篇文章我们就带大家详细了解一下。Docker利用Namespace实现了6项隔离,看似完整,实际上依旧没有完全隔离Linux...原创 2019-07-06 19:10:28 · 791 阅读 · 0 评论