![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Docker
文章平均质量分 94
贾诩是也
走过很多弯路,一直坚强、执着的眺望着远方、、、一个听着小米布斯故事成长起来的老码农。不忘初心,方得始终、、、给自己鼓劲加油,为这个时代华丽的时代喝彩!
展开
-
docker1.12安装配置及使用笔记
官方安装手册地址:https://docs.docker.com/engine/installation/linux/ubuntulinux/使用的操作系统是是ubuntu14.04,按照官方的推荐的配置(其他操作系统,多少有点区别请参考官方文档)。安装步骤如下:1、检查内核版本1uname -r #把linux内核升级到3.10以上翻译 2018-03-10 06:25:11 · 1469 阅读 · 0 评论 -
Docker背景介绍
背景介绍Docker是PasS提供商DoctCloud开源的一个基于LXC的高级容器引擎,源代码托管在Github上,基于go语言并遵从Apache2.0协议开源。Docker近期非常火热,无论是从Github上的代码活跃度,还是Redhat在REHEL6.5中集成对Docker的支持,就连Google的Compute Engine也支持docker在意之上运行,百度、阿里、新浪、京东也开翻译 2018-03-08 08:43:17 · 2096 阅读 · 0 评论 -
Pass云Docker介绍
1.Docker 简介Docker是一个开源可以将任何应用包装在”LXC容器”中运行的工具。如果说VMware,KVM包装的虚拟机,Docker包装的是应用。是一个实至名归的PaaS。当应用被打包成Docker Image后,部署和运维就变得极其简单。可以使用统一的方式 来下载,启动,扩展,删除,迁移。 Dock可以用来:自动化打包和部署任何应用创建一转载 2018-03-08 08:43:12 · 4069 阅读 · 0 评论 -
docker容器网络通信原理分析
概述自从docker容器出现以来,容器的网络通信就一直是大家关注的焦点,也是生产环境的迫切需求。而容器的网络通信又可以分为两大方面:单主机容器上的相互通信和跨主机的容器相互通信。而本文将分别针对这两方面,对容器的通信原理进行简单的分析,帮助大家更好地使用docker。docker单主机容器通信基于对net namespace的控制,docker可以为在容器创建隔离的网络环境,在隔离的网转载 2018-03-08 08:43:11 · 550 阅读 · 0 评论 -
Dockerfile 最佳实践(二)
虽然 Dockerfile 简化了镜像构建的过程,并且把这个过程可以进行版本控制,但是不正当的 Dockerfile 使用也会导致很多问题:docker 镜像太大。如果你经常使用镜像或者构建镜像,一定会遇到那种很大的镜像,甚至有些能达到 2G 以上docker 镜像的构建时间过长。每个 build 都会耗费很长时间,对于需要经常构建镜像(比如单元测试)的地方这可能是个大问题重复劳动。多次镜翻译 2018-03-08 08:42:56 · 292 阅读 · 0 评论 -
Docker 镜像加速器
Docker 镜像加速器我们使用Docker的第一步,应该是获取一个官方的镜像,例如mysql、wordpress,基于这些基础镜像我们可以开发自己个性化的应用。我们可以使用Docker命令行工具来下载官方镜像。但是因为网络原因,我们下载一个300M的镜像需要很长的时间,甚至下载失败。因为这个原因,阿里云容器Hub服务提供了官方的镜像站点加速官方镜像的下载速度。使用镜像加速器在不同转载 2018-03-08 08:42:52 · 175 阅读 · 0 评论 -
如何设置Docker容器中Java应用的内存限制
如果使用官方的Java镜像,或者基于Java镜像构建的Docker镜像,都可以通过传递 JAVA_OPTS 环境变量来轻松地设置JVM的内存参数。比如,对于官方Tomcat 镜像,我们可以执行下面命令来启动一个最大内存为512M的tomcat实例docker run --rm -e JAVA_OPTS='-Xmx512m' tomcat:8在日志中,我们可以清楚地发现设置已经生效转载 2018-03-08 08:42:52 · 7072 阅读 · 0 评论 -
深入理解Docker Volume(二)
一开始,认为Volume是用来持久化的,但是这实际上不对,因为认为Volume是用来持久化的同学一定是认为容器无法持久化,所以有了Volume来帮助容器持久化,事实上,容器会一直存在,除非你删除他们. 容器是持久的,直到你删除他们,并且你只能这么做: $docker rm my_contariner 如果你没有执行此命令,那么你的容器会一直存在,依旧可以启动,停止转载 2018-03-07 17:21:55 · 151 阅读 · 0 评论 -
linux下brctl配置网桥
设置linux让网桥运行 配置网桥我们需要让linux知道网桥,首先告诉它,我们想要一个虚拟的以太网桥接口:(这将在主机bridge上执行,不清楚的看看测试场景)root@bridge:~> brctl addbr br0其次,我们不需要STP(生成树协议)等。因为我们只有一个路由器,是绝对不可能形成一个环的。我们可以关闭这个功能。(这样也可以减少网络环境的数据包污染):ro翻译 2018-03-07 17:21:42 · 9069 阅读 · 1 评论 -
六大主流大数据采集平台架构分析
日志收集的场景DT时代,数以亿万计的服务器、移动终端、网络设备每天产生海量的日志。中心化的日志处理方案有效地解决了在完整生命周期内对日志的消费需求,而日志从设备采集上云是始于足下的第一步。随着大数据越来越被重视,数据采集的挑战变的尤为突出。今天为大家介绍几款数据采集平台:Apache FlumeFluentdLogstashChukwaScribeSplunk Forwar翻译 2018-03-07 17:21:38 · 17100 阅读 · 1 评论 -
Linux下的ip命令
linux的ip命令和ifconfig类似,但前者功能更强大,并旨在取代后者。使用ip命令,只需一个命令,你就能很轻松地执行一些网络管理任务。ifconfig是net-tools中已被废弃使用的一个命令,许多年前就已经没有维护了。iproute2套件里提供了许多增强功能的命令,ip命令即是其中之一。Net tools vs Iproute2要安装ip,请点击这里下载iproute2套装翻译 2018-03-07 17:21:34 · 8507 阅读 · 0 评论 -
深入理解Docker Volume(一)
想要了解Docker Volume,首先我们需要知道Docker的文件系统是如何工作的.Docker镜像是由多个文件系统(只读层)叠加而成.当我们启动一个容器的时候,Docker会加载镜像层并在其上添加一个读写层.如果运行中的容器修改了现有的一个已存在的文件,那该文件将会从读写层下的只读层复制到读写层,该文件的只读版本仍然存在,只是已经被读写层中该文件的副本所隐藏.当删除Docker容器,并通过该转载 2018-03-07 17:21:31 · 889 阅读 · 0 评论 -
Dockerfile最佳实践(一)
1.使用缓存 Dockerfile的每条指令都会将结果提交为新的镜像,下一跳指令将会基于上一步指令的镜像的基础上构建,如果一个镜像存在相同的父镜像和指令(除了ADD),Docker将会使用镜像而不是执行该指令,即缓存.为了有效的利用缓存,你需要保持你的Dockerfile一致,并且尽量在末尾修改.Dockerfile的前五行其实可以固定写成如下这样:FROM ubuntu MA转载 2018-03-07 17:21:19 · 123 阅读 · 0 评论 -
Docker搭建本地私有仓库
安装部署一个私有的Docker Registry是引入、学习和使用Docker这门技术的必经之路之一。尤其是当Docker被所在组织接受,更多人、项目和产品开始接触和使用Docker时,存储和分发自制的Docker image便成了刚需。Docker Registry一如既往的继承了“Docker坑多”的特点,为此这里将自己搭建”各类”Registry过程中执行的步骤、遇到的问题记录下来,为己备忘转载 2018-03-07 17:21:16 · 267 阅读 · 0 评论 -
DockerZz杂记
Docker中images中none的镜像删除docker build 或是 pull 命令就会产生临时镜像。如果我们用dockerfile创建一个helloworld镜像后,因为版本更新需要重新创建,那么以前那个版本的镜像就会成为临时镜像。这个是需要删除的。删除命令见下。sudo docker rmi $(sudo docker images -f "dangling=tru原创 2018-03-07 17:21:06 · 186 阅读 · 0 评论 -
Docker系列之(四):Win10上运行Docker
1. 前言Docker最近推出了可以运行在Win10和Mac上的稳定版本,让我们赶紧来体验一下。 2. 安装准备需要的条件为: 64bit Windows 10,开启Hyper-V 2.1 下载Docker for Windows从官网的下面地址可以下载https://download.docker.com/win/stable/In转载 2017-09-15 09:20:07 · 1294 阅读 · 0 评论 -
Maven Docker镜像使用技巧
摘要: Maven是目前最流行的Java项目管理工具之一,提供了强大的包依赖管理和应用构建功能。本文以Maven为例介绍了Docker在应用构建中的一些常见技巧。Maven是目前最流行的Java项目管理工具之一,提供了强大的包依赖管理和应用构建功能。Docker提供了官方的Maven镜像可以用于管理和构建Java应用。与直接安装使用Maven工具相比,使用Docker镜像具有更好的转载 2018-03-08 08:43:17 · 418 阅读 · 0 评论 -
基于kubernetes构建Docker集群管理详解
一、前言 Kubernetes 是Google开源的容器集群管理系统,基于Docker构建一个容器的调度服务,提供资源调度、均衡容灾、服务注册、动态扩缩容等功能套件,目前最新版本为0.6.2。本文介绍如何基于Centos7.0构建Kubernetes平台,在正式介绍之前,大家有必要先理解Kubernetes几个核心概念及其承担的功能。以下为Kubernetes的架构设计图:转载 2018-03-08 08:43:22 · 1480 阅读 · 1 评论 -
Docker数据卷
数据卷是一个可以供一个或多个容器使用的特殊目录。 可以达到以下目的: 1. 绕过“拷贝写”系统,以达到本地磁盘IO的性能,(比如运行一个容器,在容器中对数据卷修改内容,会直接改变宿主机上的数据卷中的内容,所以是本地磁盘IO的性能,而不是先在容器中写一份,最后还要将容器中的修改的内容拷贝出来进行同步。) 2. 绕过“拷贝写”系统,有些文件不需要在docker commit打包进镜像文件。转载 2018-03-10 06:25:01 · 330 阅读 · 0 评论 -
Linux iptables常用命令
iptables 是 Linux 中重要的访问控制手段,是俗称的 Linux 防火墙系统的重要组成部分。这里记录了iptables 防火墙规则的一些常用的操作指令。下面的操作以 CentOS 为基础介绍,应该对不同的 Linux 发行版都差不多。在 CentOS 5.x 和 6.x 中,iptables 是默认安装的(如果没有安装,先安装 iptables 即可)。如果对 iptabl翻译 2018-03-10 06:24:55 · 330 阅读 · 0 评论 -
docker 下 alpine 镜像设置时区的有效办法
在使用Docker的时候,由于很多基础linux镜像都比较大,alpine这个仅仅几兆的linux基础镜像受到了很多人喜欢,笔者也不例外,可是由于alpine中的一些配置及命令与常见的centos等系统在一些方面不一样,下面来看看时区问题是如何解决的:原因:alpine中,原生是不带时区相关的命令及文件的,需要安装额外的包来支持,然后需要将时区文件内容替换为localtime文件解决办转载 2018-03-10 06:24:49 · 3133 阅读 · 0 评论 -
基于 CentOS7 的 Kubernetes 集群
一、环境相关主机master192.168.12.197minion192.168.12.198~232etcd192.168.12.233~236相关软件OSCentOS 7软件版本:kubernetes-0.19.3etcd-2.0.9-2.el7.x86_64docker-1.6.0-11.0.1.el7.cen转载 2018-03-09 07:00:37 · 206 阅读 · 0 评论 -
Docker如何为企业产生价值?
一个 IT 系统大致可以分为:应用程序运行时平台(bin/framework/lib)操作系统硬件(基础设施)开发人员的主要工作是应用程序的编码、构建、测试和发布,涉及应用程序和运行时平台这两层。而运维人员的工作则涉及从硬件、操作系统到运行时平台的安装、配置、运行监控、升级和优化等工作。云计算最主要的价值体现在实现了自动化运维。提高资源的利用效率,是较为次要的价值。转载 2018-03-09 07:00:31 · 699 阅读 · 0 评论 -
kubernetes
docker仅能在单机上部署容器,而kubernetes可以统一管理各类容器,形成集群。Kubernetes作为Docker生态圈中重要一员,是Google多年大规模容器管理技术的开源版本。Kubernetes支持GCE、vShpere、CoreOS、Azure等平台,也可以直接运行在物理机上。 Kubernetes非常适合做微服务的架构。其主要功能如下:1) 用户不需要关心需要多翻译 2018-03-09 07:00:22 · 295 阅读 · 0 评论 -
Docker命令详解
# docker --helpUsage: docker [OPTIONS] COMMAND [arg...]docker daemon [ --help | ... ]docker [ -h | --help | -v | --version ]A self-sufficient runtime for containers.Options:--config=~/.doc翻译 2018-03-09 07:00:22 · 253 阅读 · 0 评论 -
Docker 有什么优势?
1.什么是容器? 依托与linux 内核功能的虚拟化技术2. docker 是什么? 能够把应用程序自动部署到容器的开源引擎3. docker 跟原有的工具有何区别?传统的部署模式是:安装(包管理工具或者源码包编译)->配置->运行;Docker的部署模式是:复制->运行。4. docker 会对服务器端开发/部署带来什么变化? 实现更轻量级的虚拟化,方便快速原创 2018-03-09 07:00:19 · 24208 阅读 · 1 评论 -
理解Docker容器的进程管理
摘要: Docker在进程管理上有一些特殊之处,如果不注意这些细节中的魔鬼就会带来一些隐患。另外Docker鼓励“一个容器一个进程(one process per container)”的方式。这种方式非常适合以单进程为主的微服务架构的应用。然而由于一些传统的应用是由若干紧耦合的多个进程构成的,这些进程难以Docker在进程管理上有一些特殊之处,如果不注意这些细节中的魔鬼就会带来一些隐患。转载 2018-03-09 07:00:17 · 3559 阅读 · 0 评论 -
Docker之Linux Namespace
Linux Namespace 介绍我们经常听到说Docker 是一个使用了Linux Namespace 和 Cgroups 的虚拟化工具,但是什么是Linux Namespace 它在Docker内是怎么被使用的,说到这里很多人就会迷茫,下面我们就先介绍一下Linux Namespace 以及它们是如何在容器里面使用的。概念Linux Namespace 是kernel 的一个功能转载 2018-03-09 07:00:14 · 916 阅读 · 0 评论 -
Docker之Linux Cgroups
Linux Cgroups介绍上面是构建Linux容器的namespace技术,它帮进程隔离出自己单独的空间,但Docker又是怎么限制每个空间的大小,保证他们不会互相争抢呢?那么就要用到Linux的Cgroups技术。概念Linux Cgroups(Control Groups) 提供了对一组进程及将来的子进程的资源的限制,控制和统计的能力,这些资源包括CPU,内存,存储,网络等。通翻译 2018-03-09 07:00:08 · 263 阅读 · 0 评论 -
Docker之Linux UnionFS
UnionFSUnionFS是一种为Linux,FreeBSD和NetBSD操作系统设计的把其他文件系统联合到一个联合挂载点的文件系统服务。它使用branch把不同文件系统的文件和目录“透明地”覆盖,形成一个单一一致的文件系统。这些branches或者是read-only或者是read-write的,所以当对这个虚拟后的联合文件系统进行写操作的时候,系统是真正写到了一个新的文件中。看起来这个虚翻译 2018-03-09 07:00:07 · 1874 阅读 · 1 评论 -
Ubuntu14.04下安装docker 1.9
以下几种方式:1. 通过系统自带包安装(可能不是最新版)$ sudo apt-get update $ sudo apt-get install -y docker.io $ sudo ln -sf /usr/bin/docker.io /usr/local/bin/docker $ sudo sed -i '$acomplete -F _docker docker' /etc/转载 2018-03-09 07:00:02 · 254 阅读 · 0 评论 -
kubernetes学习笔记
docker实现了更便捷的单机容器虚拟化的管理, docker的位置处于操作系统层与应用层之间;相对传统虚拟化(KVM,XEN):docker可以更加灵活的去实现一些应用层功能, 同时对资源的利用率也更高相对应用:docker可以把应用更操作系统(镜像)做更好的结合, 降低部署与维护的的成本处于这样一个位置在单机使用docker进行业务部署是可以感觉到质的提升; 但转载 2018-03-08 08:43:32 · 317 阅读 · 0 评论 -
Google Kubernetes设计文档之服务篇
摘要:Kubernetes是Google开源的容器集群管理系统,构建于Docker之上,为容器化的应用提供资源调度、部署运行、服务发现、扩容缩容等功能。 Pod是创建、调度和管理的最小部署单位,本文详细介绍这些Pod之间的通信和调度 概述Kubernetes中 Pods 不是一成不变的。它们可以随着时间进行迁移,特别是当受到ReplicationControllers 支配时。虽然每个转载 2018-03-08 08:43:29 · 169 阅读 · 0 评论 -
Docker系列之(二):使用Mesos管理Docker集群
1. Mesos简介1.1 MesosApache Mesos 是一个分布式系统的管理软件,对集群的资源进行分配和管理。Mesos主要由以下几部分组成:Master: 管理各Slave节点Slave: 为集群提供资源Framework: scheduler从Master请求资源,executor在Slave上执行任务Slave节点上的转载 2017-09-15 09:18:20 · 404 阅读 · 0 评论 -
Docker系列之(五):使用Docker Compose编排容器
1. 前言Docker Compose 是 Docker 容器进行编排的工具,定义和运行多容器的应用,可以一条命令启动多个容器。使用Compose 基本上分为三步:Dockerfile 定义应用的运行环境docker-compose.yml 定义组成应用的各服务docker-compose up 启动整个应用 2. 安装Compose转载 2017-09-15 09:20:51 · 391 阅读 · 0 评论 -
Docker系列之(三):Docker微容器Alpine Linux
1. 前言使用Docker创建容器时,基础镜像通常选择Ubuntu或Centos,不管哪个镜像的大小都在100MB以上。 Alpine Linux是一个面向安全的轻型的Linux发行版。Alpine Linux采用了 musl libc 和 busybox以减小系统的体积和运行时资源消耗。在保持瘦身的同时,Alpine Linux还提供了自己的包管理工具ap转载 2017-09-15 09:19:20 · 11667 阅读 · 0 评论 -
Docker系列之(一):10分钟玩转Docker
1、前言进入云计算的时代,各大云提供商AWS,阿里云纷纷推出针对Docker的服务,现在Docker是十分火爆,那么Docker到底是什麽,让我们来体验一下。2、Docker是什麽Docker是一个开源的应用容器引擎,可以把应用以及依赖包放到一个可移植的容器中,然后发布到任何流行的 Linux 系统上,通过这种方式实现虚拟化。提到虚拟化,大家应该十分熟悉了,有VMw转载 2017-09-15 09:16:38 · 292 阅读 · 0 评论 -
Docker个人学习笔记1
刚开始学习Docker的时候,找资料在网上看到最多的是Docker的好处。比如:1、Docker 容器的启动可以在秒级实现,这相比传统的虚拟机方式要快得多2、Docker 对系统资源的利用率很高,一台主机上可以同时运行数千个 Docker 容器。3、更快速的交付和部署、更轻松的迁移和扩展等等……因为我是做java开发的,我们现有的模式是在一个服务器上安装统一原创 2017-09-15 09:09:26 · 277 阅读 · 0 评论 -
手动为docker配置固定ip
Docker默认使用bridge模式,通过网桥连接到宿主机,而容器内部的ip则从网桥所在的ip段取未用的ip。这样做一个不方便的地方在于容器内部的ip不是固定的,想要连接容器时只能通过映射到宿主机的端口,因而有很多项目使用overlay来为docker提供网络的配置,比如Pipework、Flannel、Kubernetes、Weave、opencontrail等。想要使用overlay来转载 2017-09-04 00:06:36 · 701 阅读 · 0 评论 -
正确认识Docker、Kubernetes、Apache Mesos
无数的文章、社交媒体在探讨Docker、Kubernetes、Mesos三者之间孰优孰劣。如果你听信了某些一知半解者的言论,你可能会认为这三个开源项目正在为争夺容器霸权而殊死战斗。同时,你也会相信,在这三者间的选择无异于对其所奉宗教的信仰,而且真正的信徒敢于大胆和异教徒作斗争,并且拥护自己的信仰。那些都是扯淡。虽然这三种技术都可以使用容器来部署、管理和扩展应用程序,但实际上它们每个都侧重解翻译 2017-08-06 10:01:13 · 6128 阅读 · 0 评论