![开始 Vagrant 之旅](/data/attachment/album/201805/23/114315cw6iy7ak7yikb9w9.jpg.thumb.jpg)
用管理虚拟机和容器的工具 Vagrant 清理你的开发环境和依赖。
![如何使用 Buildah 构建容器镜像](/data/attachment/album/201805/21/071923ewuygn5g3vggjf3n.png.thumb.jpg)
Buildah 处理构建容器镜像时无需安装完整的容器运行时或守护进程。这对建立容器的持续集成和持续交付管道尤其有用。
![如何使用 virsh 命令创建、还原和删除 KVM 虚拟机快照](/data/attachment/album/201805/07/222002g2mmtixiilftxxhh.jpg.thumb.jpg)
如果你在使用基于 KVM 的虚拟机管理程序,那么可以使用 virsh 命令获取虚拟机或域快照。
![Dry:一个命令行交互式 Docker 容器管理器](/data/attachment/album/201805/07/220628oam0bmtit7lolm7i.jpg.thumb.jpg)
Dry 可以给出容器相关的信息,包括对应镜像、容器名称、网络、容器中运行的命令及容器状态;如果运行在 Docker Swarm 中,工具还会给出 Swarm 集群的各种状态信息。
![“开箱即用” 的 Kubernetes 集群](/data/attachment/album/201804/28/065439yadbvnowe5wdxrew.png.thumb.jpg)
当你想在云上创建一个集群或者尽可能快地构建基础设施时,你可能会用到它。
![如何使用 DockerHub](/data/attachment/album/201804/16/100714hydmwjmalw6j7c8d.jpg.thumb.jpg)
在这个 Docker 系列的最后一篇文章中,我们将讲述在 DockerHub 上使用和发布镜像。
![Google Kubernetes Engine(GKE)使用初探](/data/attachment/album/201804/15/095240l1oiz1oo1t14vjig.jpg.thumb.jpg)
本文只是一个入门指南,主要指导能快速开始上手基于 Google Cloud Platform 的 GKE 服务(k8s 托管服务)。
![如何创建一个 Docker 镜像](/data/attachment/album/201804/13/203226wcb8i8v6zrc88ff8.jpg.thumb.jpg)
在这篇文章中,我们将学习创建 Docker 镜像的基本知识。
![使用 Graylog 和 Prometheus 监视 Kubernetes 集群](/data/attachment/album/201804/10/182842hu1toaq9hhh9uiou.png.thumb.jpg)
在本文中,我将使用 Graylog (用于日志)和 Prometheus (用于指标)去打造一个 Kubernetes 集群的监视解决方案。
![如何在 Ubuntu Linux 上使用 KVM 云镜像](/data/attachment/album/201804/07/113721yqkd8s07s80b00mv.jpg.thumb.jpg)
如何下载并使用运行在 Ubuntu Linux 服务器上的 KVM 云镜像?如何在 Ubuntu Linux 16.04 LTS 服务器上无需完整安装即可创建虚拟机?如何在 Ubuntu Linux 上使用 KVM 云镜像?
![容器环境中的代理模型](/data/attachment/album/201804/02/094024yasbbcasss7bz7cy.jpg.thumb.jpg)
我们大多数人都熟悉代理如何工作,但在基于容器的环境中有什么不同?让我们来看看有什么改变。
![3 种扩展 Kubernetes 能力的方式](/data/attachment/album/201803/27/104158hfucxmazdauauczy.png.thumb.jpg)
你需要扩展 Kubernetes。有三种方法可以做到这一点,从最灵活(但也更困难)到最简单的依次是:使用 Kube 聚合器、使用 API 服务器构建器或创建自定义资源定义(CRD)。
![什么是容器?为什么我们关注它?](/data/attachment/album/201803/22/083753hzcx8kxvux8d7ckg.jpg.thumb.jpg)
什么是容器?你需要它们吗?为什么?在这篇文章中,我们会回答这些基本问题。
![如何在 CentOS 7 / RHEL 7 终端服务器上安装 KVM](/data/attachment/album/201803/18/211158v4zl4v4bick7frcf.jpg.thumb.jpg)
基于内核的虚拟机(KVM)是 CentOS 或 RHEL 7 的虚拟化软件。KVM 可以将你的服务器变成虚拟机管理器。
![Linux 容器安全的 10 个层面](/data/attachment/album/201803/11/110949us87gob6001hi6z0.png.thumb.jpg)
应用这些策略来保护容器解决方案的各个层面和容器生命周期的各个阶段的安全。
![什么是 CGManager?](/data/attachment/album/201803/05/002752zegdnjo88vnnjmag.jpg.thumb.jpg)
CGManager 是一个核心的特权守护进程,通过一个简单的 D-Bus API 管理你所有的 cgroup。它被设计用来处理嵌套的 LXC 容器以及接受无特权的请求,包括解析用户名称空间的 UID/GID。
![如何使用 cloud-init 来预配置 LXD 容器](/data/attachment/album/201802/24/212520cj6y0lj9jj49nvz4.jpg.thumb.jpg)
当你正在创建 LXD 容器的时候,你希望它们能被预先配置好。例如在容器一启动就自动执行 apt update来安装一些软件包,或者运行一些命令。
![containerd 1.0 探索之旅](/data/attachment/album/201802/22/124722gibtz0ag72azo442.jpg.thumb.jpg)
containerd 被用于 Docker、Kubernetes CRI、以及一些其它的项目,在这些平台中事实上都使用了 containerd,而许多人并不知道 containerd 存在于这些平台之中,这篇文章就是为这些人所写的。
![如何 Docker 化编译的软件](/data/attachment/album/201802/21/121232xxx3wsf642xwv62m.jpg.thumb.jpg)
我写了一个中等篇幅的评论解释了我如何用常规的方式为我想要的软件进行 Docker 化的。
![为什么 Kubernetes 很酷](/data/attachment/album/201802/03/234107htpn7qntr02q6qos.jpg.thumb.jpg)
在我刚开始学习 Kubernetes(大约是一年半以前吧?)时,我真的不明白为什么应该去关注它。
在我使用 Kubernetes 全职工作了三个多月后,我才逐渐明白了为什么我应该使用它。
![在 Ubuntu 上体验 LXD 容器](/data/attachment/album/201801/18/113902apgo7es2ocs2fgtz.jpg.thumb.jpg)
本文的主角是容器,一种类似虚拟机但更轻量级的构造。你可以轻易地在你的 Ubuntu 桌面系统中创建一堆容器!
![Docker 涉密信息管理介绍](/data/attachment/album/201801/13/102107y9j7v4joa4n8uauz.jpg.thumb.jpg)
构建更安全的应用程序的一个关键因素是与系统和其他应用程序进行安全通信,这通常需要证书、令牌、密码和其他类型的验证信息凭证 —— 通常称为应用程序涉密信息(secrets)。
![为小白准备的重要 Docker 命令说明](/data/attachment/album/201801/11/204843glfost4kkwykd4fo.png.thumb.jpg)
在本教程中,我们会学习管理 docker 容器的其他命令。
![一步步采用 Kubernetes](/data/attachment/album/201801/06/143444mwdwd2jlw6nurn6w.jpg.thumb.jpg)
这正是 Kubernetes 登场的时候。它是一个容器编排orchestration系统,它允许您以一定的标准管理、缩放和部署应用程序的不同部分,并且成为其中的重要工具。
![如何在 CentOS 7 / RHEL 7 的 KVM 上启用嵌套虚拟化](/data/attachment/album/201712/31/204014zlw6mk9iiszhcsgm.jpg.thumb.jpg)
嵌套虚拟化意味着在虚拟机内配置虚拟化环境。换句话说,我们可以说嵌套虚拟化是虚拟机管理程序(hypervisor)的一个特性,它允许我们通过虚拟化管理程序(宿主机)的硬件加速在虚拟服务器内安装和运行虚拟机。
![用 Ansible Container 去管理 Linux 容器](/data/attachment/album/201712/28/181710auyru6kuhokbhdz3.png.thumb.jpg)
Ansible Container 解决了 Dockerfile 的不足,并对容器化项目提供了完整的管理。
![如何在 Linux 启动时自动启动 LXD 容器](/data/attachment/album/201712/25/134247vu4yiw2jpk1akijw.jpg.thumb.jpg)
当 LXD 在启动时运行,你就可以随时启动容器。你需要将 boot.autostart 设置为 true。
![LinchPin:一个使用 Ansible 的简化的编配工具](/data/attachment/album/201712/21/224543hbqbz5m6xgmmuscm.png.thumb.jpg)
2016 年末开始的 LinchPin,现在已经拥有一个 Python API 和一个成长中的社区。
![在红帽企业版 Linux 中将系统服务容器化(一)](/data/attachment/album/201712/12/120057wnsg7irlnhr3nhxc.jpg.thumb.jpg)
在 2017 年红帽峰会上,有几个人问我“我们通常用完整的虚拟机来隔离如 DNS 和 DHCP 等网络服务,那我们可以用容器来取而代之吗?”答案是可以的,下面是在当前红帽企业版 Linux 7 系统上创建一个系统容器的例子。
![Docker:使用多阶段构建镜像](/data/attachment/album/201712/11/223241y0thlaabla8ahh7z.jpg.thumb.jpg)
多阶段构建是 Docker 17.05 及更高版本提供的新功能。这对致力于优化 Dockerfile 的人来说,使得 Dockerfile 易于阅读和维护。
![Photon 也许能成为你最喜爱的容器操作系统](/data/attachment/album/201712/04/223630pii8gzm6v2hkh3mm.jpg.thumb.jpg)
Photon 就是这样的一个发行版。这个特殊的版本是由 VMware 于 2005 年创建的,它包含了 Docker 的守护进程,并可与容器框架(如 Mesos 和 Kubernetes )一起使用。Photon 经过优化可与 VMware vSphere 协同工作,而且可用于裸机、Microsoft Azure、 Google Compute Engine、 Amazon Elastic Compute Cloud 或者 VirtualBox 等。
![介绍 Moby 项目:推进软件容器化运动的一个新的开源项目](/data/attachment/album/201711/29/054157oxcaiq4xxu4x4yz1.png.thumb.jpg)
自从 Docker 四年前将软件容器推向大众化以来,整个生态系统都围绕着容器化而发展,在这段这么短的时期内,它经历了两个不同的增长阶段。在这每一个阶段,生产容器系统的模式已经随着项目和不断增长的容器生态系统而演变适应用户群体的规模和需求。
![了解用于 Linux 和 Windows 容器的 Docker “容器主机”与“容器操作系统”](/data/attachment/album/201711/27/225657t2mt8222b5ma5c24.png.thumb.jpg)
让我们来探讨一下“容器主机”和“容器操作系统”之间的关系,以及它们在 Linux 和 Windows 容器之间的区别。
![借助 minikube 上手 OpenFaaS](/data/attachment/album/201711/23/163035naykmjmb00z8ugpo.png.thumb.jpg)
本文将介绍如何借助 minikube 在 Kubernetes 1.8 上搭建 OpenFaaS(让 Serverless Function 变得更简单)。minikube 是一个 Kubernetes 分发版,借助它,你可以在笔记本电脑上运行 Kubernetes 集群,minikube 支持 Mac 和 Linux 操作系统,但是在 MacOS 上使用得更多一些。
![使用 LXD 容器运行 Ubuntu Core](/data/attachment/album/201711/23/004218pohu77bt0tlrtvz1.jpg.thumb.jpg)
Ubuntu Core 是完全基于 snap 包构建,并且完全事务化的 Ubuntu 版本。
![很遗憾,我也不知道什么是容器!](/data/attachment/album/201711/22/233347d77ay3h3dy73d3ba.png.thumb.jpg)
题图抽象的形容了容器和虚拟机是那么的相似,又是那么的不同!
![使用 Ansible Container 构建和测试应用程序](/data/attachment/album/201711/19/061202bud9plxpcqeeztlz.jpg.thumb.jpg)
容器是一个日益流行的开发环境。作为一名开发人员,你可以选择多种工具来管理你的容器。本文将向你介绍 Ansible Container,并展示如何在类似生产环境中运行和测试你的应用程序。
![用 Kubernetes 和 Docker 部署 Java 应用](/data/attachment/album/201711/18/113130tep9pppxn3cejt6e.jpg.thumb.jpg)
在这篇文章中,我们将使用以前的一个简单的基于 Java 的电子商务商店,我们将它打包进 Docker 容器内,并且在 Kubernetes 上运行它。
![原生云计算:你所不知道的 Kubernetes 特性和工具](/data/attachment/album/201711/16/014700ukj3k7llk71kkjpk.jpg.thumb.jpg)
开放容器计划(OCI)和原生云计算基金会(CNCF)的代表说,Kubernetes 和容器可以在降低程序员和系统管理成本的同时加速部署进程,从被忽视的 Kubernetes 特性(比如命令空间)开始,去利用 Kubernetes 和它的相关工具运行一个原生云架构。
![CRI-O 1.0 简介](/data/attachment/album/201710/31/234936q6dom9robz9poc9f.jpg.thumb.jpg)
去年,Kubernetes 项目推出了容器运行时接口(CRI):这是一个插件接口,它让 kubelet 有使用不同的兼容 OCI 的容器运行时的能力,而不需要重新编译 Kubernetes。在这项工作的基础上,CRI-O 项目(原名 OCID)准备为 Kubernetes 提供轻量级的运行时。
![如何成规模地部署多云的无服务器程序和 Cloud Foundry API](/data/attachment/album/201710/24/121629hlwc8l2fh66h2x56.png.thumb.jpg)
IBM 的 Ken Parmelee 说:“微服务和 API 是产品,我们需要以这种方式思考。”
![Grafeas:旨在更好地审计容器](/data/attachment/album/201710/22/102612x2u8zq2jcewttuwu.jpeg.thumb.jpg)
Google 的 Grafeas 为容器的元数据提供了一个从镜像、构建细节到安全漏洞的通用 API。
![Ciao:云集成高级编排器](/data/attachment/album/201710/20/233813xercyqzsgylylufj.jpeg.thumb.jpg)
Ciao 是一个新的负载调度程序,用来解决当前云操作系统项目的局限性
![Docker 快速入门之 Dockerfile](/data/attachment/album/201710/20/222828ouudmzdmouzrfmyd.jpg.thumb.jpg)
本文从一个具体的例子出发,讲述了如何利用 Dockerfile 构建镜像,然后解释了 Dockerfile 文件中的指令的语法,有关更多内容可访问官方文档。
![Up:在几秒钟内部署无服务器应用程序](/data/attachment/album/201710/17/222344ghhnihphli9phphk.png.thumb.jpg)
为什么关注无服务器(serverless)?对于初学者来说,它可以节省成本,因为你可以按需付费,且只为你使用的付费。无服务器方式是自愈的,因为每个请求被隔离并被视作“无状态的”。最后,它可以无限轻松地扩展 —— 没有机器或集群要管理。部署你的代码就行了。
![编排工具充分发挥了 Linux 容器技术优势](/data/attachment/album/201710/02/150503qcqfkhaaubkyu9q4.jpg.thumb.jpg)
一旦公司越过了“让我们看看这些容器如何工作”的阶段,他们最终会在许多不同的地方运行容器
![Kubernetes 为什么这么重要?](/data/attachment/album/201709/26/104950yxa1sdysqwy70qhg.jpeg.thumb.jpg)
从头开始构建基础设施和开发流程来开发和维护云原生应用程序是个不简单的、耗时的任务。Kubernetes 是一个相对较新的运行容器化负载的平台,它解决了这些问题。
![Docker 引擎的 Swarm 模式:添加工作者节点教程](/data/attachment/album/201709/22/230527i8ifi9ps7pqy4eao.jpg.thumb.jpg)
我们学习了如何初始化以及启动 Docker 1.12 中内置的原生的集群以及编排功能。但是我们只有管理者manager节点还没有其它工作者worker节点。今天我们会展开讲述这个。
![Docker 引擎的 Swarm 模式:入门教程](/data/attachment/album/201709/21/000157kapl2p7l32h2lyz2.jpg.thumb.jpg)
简单来讲,如果你在用一个旧版本的 Docker,你必须手动配置 Swarm 来创建 Docker 集群。从 1.12 版开始,Docker 引擎集成了一个原生的实现来支持无缝的集群设置。
![在 Kubernetes 集群中运行 WordPress](/data/attachment/album/201709/19/092435z39irasw73b99rqb.jpg.thumb.jpg)
在这篇文章中,我们将会从一些简单的操作开始,了解一下 Kubernetes 平台,看看如何将一个 WordPress 网站部署在本地机器上的一个单节点集群中。