Docker Registry

Docker Registry Storage

上篇文章写了 Docker Registry Auth 的流程,这里研究一下 Docker Registry Storage。 Docker 镜像仓库的支持支持多种储存类型,主要分为两大类 本地储存 远程储存 本地储存为 filesystem 和 inmemory,然后远程储存就主要是一些云计算厂商的储存业务了。无论那种储存都是基于 StorageDriver 这个接口的实现。 储存结构 . └── docker └── registry └── v2 ├── blobs │   └── sha256 │   ├── 07 │   │   └── 0766572b4bacfaee9a8eb6bae79e6f6dbcdfac0805c7c6ec8b6c2c0ef097317a │   ├── 9a │   │   └── 9a597e826a59709a4af34279f496c323d496a79e4c998ee5249a738e391192bb │   └── 9c

Docker

Bamboo 原理分析

原理简介 Bamboo 为了 DO/CS 系统提供了服务自动发现的功能,当 Marathon 上部署了一个应用,Bamboo 能够将应用下所有的容器的端口更新到 HAProxy 的配置文件中,并且 reload HAProxy,从而实现应用的服务自动发现,并且利用 HAProxy 做应用中容器的负载均衡。 Bamboo 主要的原理就是利用 Marathon 的 Event-Bus API,当 Marathon 上的应用发生改变(scaling)时,Event-Bus 会通知对应的

Docker

减小 Docker 镜像体积

最近遇到了 Docker 镜像体积过大的问题,对于部署、移交相当麻烦和慢。于是就抽点时间研究下了怎么减小 Docker 镜像的体积。 下面我以手动编译 nginx 镜像作为例子来减小镜像体积,nginx 的版本是 1.10.2,并且下载到了当前目录。 下图是各种 Dockerfile 制作出镜像的效果 替换基础镜像 基于 centos 的镜像 基于 Alpine 的镜像 移除 build 依赖的文件 centos 基础镜像的依赖 Alpine

Docker

用 Docker 部署 Python Web Application

Tips: 下面的部分链接中带有小尾巴,谨点 去年的时候从阿里云捻过一次羊毛(云翼计划,如果愿意,可以是用我的阿里云推荐码,z9xy74),如今一年已过,这个服务器也过期了,但是上面跑了一个微信企业号的应用在,由于有一直在使用的需求,不能停止,但是阿里云的羊毛是青岛节点,延迟高,而且现在到期了,默认变成了按流量付费,顿时觉得随时会少一套房子了。于是重新买了一个阿里云的华东节点,准备迁移过来,并且也准备把 DigitalOcean 上的部分应用迁移回国。 Docker 环境的准备 镜像的初始化 MySQL Redis Web Application Nginx 和之前的比较 一些问题

Docker

Docker Cluster with Swarm

最近因为工作的原因,需要用到 Docker,并且搭建 Docker Cluster(集群),然后首先学习了一下 Docker Swarm,这里做一下记录。 准备工作 制作基础镜像 初始化多台虚拟机 Docker Swarm 发现服务 Docker Hub Consul 参考 #准备工作 由于是在本机模拟集群,所以我采用的是 Vagrant 和 VirtualBox 创建虚拟机来模拟集群。 假设本机已经装好了 Vagrant。 ##制作基础镜像 本次模拟我采用的虚拟机系统是 Ubuntu