![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
docker
文章平均质量分 78
原来是木斯
做一个自由又自律的人
靠势必实现的决心认真地活着
展开
-
使用runc,v1.0.0-rc2时遇到的问题
启动不了容器在make和make install后,使用 runc create或者runc run会报错starting container process caused "process_linux.go:359: container init caused \"rootfs_linux.go:53: mounting \\\"cgroup\\\" to rootfs \\\"/containers/mycontianer/rootfs\\\" at \\\"/sys/fs/cgroup\\\原创 2021-10-03 14:51:21 · 341 阅读 · 0 评论 -
moby源码修改和编译步骤
一、源码编译首先最好保证主机上docker环境是干净的,即没有镜像、容器。然后,去moby项目页上clone项目,在项目目录下进行Dockerfile 构建make BIND_DIR=. shell这一步过程时间比较长,而且会出现错误,错误一般是网络问题,比如 github 克隆不了等。编译成功之后,主机会多出一个镜像,并且会进入一个带有开发环境的容器,命令提示如下:Successfully built 3d872560918eSuccessfully tagged docke原创 2021-09-24 22:36:35 · 1636 阅读 · 1 评论 -
Contaienrd与runC简介
Containerd 是什么?在2016年12月14日,Docker公司宣布将containerd从Docker中分离,由开源社区独立发展和运营。Containerd完全可以单独运行并管理容器,而Containerd 的主要职责是镜像管理和容器执行,它通过对 Docker Daemon 提供 grpc接口,屏蔽 Docker Daemon 对下面结构变化的感知。同时,Containerd 提供了containerd-shim 接口封装层,向下继续对接 runC 项目,使得容器引擎 Docker Daem原创 2021-09-16 11:15:24 · 404 阅读 · 0 评论 -
容器迁移研究现状与CRIU介绍
一、容器迁移相关研究Virtuozzo:研究容器技术的先锋团队,对于容器迁移有相关的研究经验。作为第一个提出容器实时迁移的组织,Virtuozzo支持在其容器上进行实时迁移。但是,它的实现方法是将执行容器热迁移所需的主要进程和功能集成到Virtuozzo内核中,因而Virtuozzo内核是高度定制的Linux内核。 CRIU:由于Virtuozzo是高度定制的内核,为了在主流Linux内核环境中实现同样的功能,因而Virtuozzo建立了CRIU项目。随着开源社区的帮助,CRIU现在也被整合到Open原创 2021-09-12 19:49:06 · 232 阅读 · 0 评论 -
docker镜像的目录存储
关系概念:diffID:镜像每层次内容的摘要,反映了单个层次内容的信息chainID:镜像每层次的链ID,算法为H(N)=H(N-1)sha256(n),与其自身和所有的父层次相关,反映了祖先链。镜像层次的重用需要chainID相同,如果只是diffID相同则不能命中。cacheID:镜像内容实际存放的位置,是一个随机值,与chainID的对应关系见下面的目录说明目录结构/var/lib/docker/image/overlay2:存储镜像管理数据的目录,以使用的存储驱动命名其中原创 2021-06-24 09:55:28 · 2001 阅读 · 0 评论 -
docker registry详解
首先列出docker registry官方API的地址:Registry API,然后还有使用手册:Docker Registry。Docker Registry使用:1、开始一个registry:docker run -d -p 5000:5000 \--name registry --restart=always \-v 'pwd'/registry:/var/lib/registry \registry:2如果需要配置文件的话,则加上配置文件挂载。(config详细信息)..原创 2021-07-05 16:23:53 · 10495 阅读 · 1 评论 -
docker组件分析
Docker的主要组件Docker CLI(docker):docker程序是一个客户端工具,用来把用户的请求发送给 docker daemon(dockerd)。该程序的安装路径为:/usr/bin/dockerDockerd:即 docker daemon,也被称为 docker engine。安装路径为:/usr/bin/dockerdContainerd:详情参考containerd简介。该程序的安装路径为:/usr/bin/docker-containerdContainerd-s原创 2021-09-16 10:15:29 · 251 阅读 · 0 评论