容器
/var/lib/docker 能不能挂载远端存储
· ☕ 3 分钟
不能 1. 问题背景 基于 Kubernetes 构建可靠、稳定的运维系统时,虚拟机 (VM) 的销毁和新建是一种常态。VM 提供的是计算和内存资源,而使用外部存储,通过 StorageClass 提供给集群中的 PVC 消费。 在这样的背景下,如何快速初始化 VM 成为新的挑战。常见的思路是制作 Node 节点的 VM 镜像,提前将依赖

如何搭建一个私有的镜像仓库 mirror
· ☕ 1 分钟
1. 为什么需要一个私有的镜像仓库 mirror 公网限速 dockerhub 拉取限制频率 减少拉取镜像时间 2. 创建一个 Registry 镜像加速服务 生成一个配置文件 version: 0.1 log: fields: service: registry storage: cache: blobdescriptor: inmemory filesystem: rootdirectory: /var/lib/registry http: addr: :5000 headers: X-Content-Type-Options: [nosniff] health: storagedriver: enabled: true interval: 10s threshold: 3 但这样启动的服务只能作为 Registry 而不是 Mirror。Registry 是用来存储镜像

老树开新花 - Cloud Native Buildpacks
· ☕ 4 分钟
1. Buildpack 老树开新花 Buildpacks 项目最早是由 Heroku 在 2011 年发起, 被以 Cloud Foundry 为代表的 PaaS 平台广泛采用。在之前的文档 《PaaS 部署之 buildpack》 中, 我演示了如何将一个 Django 应用部署到 Heroku 上。 Buildpacks 不足的是产出包是 Droplet 格式, 不能直接适配容器平台。 在 2018 年 1 月, Pivotal 和 Heroku 发起了一个项

如何在主机上调试容器、在容器中操作主机
· ☕ 6 分钟
1. 一个奇怪的需求 老板有个奇怪的需求,通过一个 kubeconfig 文件,获取主机的各种状态信息,比如进程列表、进程状态等。 第一反应就是,老板是不是不懂容器,容器怎么能这样玩,这样玩还要什么容器,内心万马奔腾。 直到最近遇到了一个命令行工具,才发现原来小丑是我自己

镜像管理工具 -- Harbor
· ☕ 3 分钟
1. 搭建 Harbor 的要求 Harbor 硬件要求: CPU,最少 2 核,4 核更好 Mem,最少 4 GB,8 GB 更好 Disk,最少 40 GB,160 GB 更好 Docker 版本要求: 17.06.0 以上 在 Kubernetes 上搭建 Harbor ,可以参考文档,使用 Helm 搭建 harbor 。 2. Harbor 提供的功能 Harbor 是在 Docker Registry 的基础之上,进行了企业级扩展。Harbor