Shell 实现的 Docker Bocker
Bocker 详细介绍
Bocker 是一个用大约 100 行代码实现的 Docker。
依赖:
btrfs-progs
curl
iproute2
iptables
libcgroup-tools
util-linux >= 2.25.2
coreutils >= 7.5
基本使用方法:
$ bocker pull centos 7
######################################################################## 100.0%
######################################################################## 100.0%
######################################################################## 100.0%
Created: img_42150
$ bocker images
IMAGE_ID SOURCE
img_42150 centos:7
$ bocker run img_42150 cat /etc/centos-release
CentOS Linux release 7.1.1503 (Core)
$ bocker ps
CONTAINER_ID COMMAND
ps_42045 cat /etc/centos-release
$ bocker logs ps_42045
CentOS Linux release 7.1.1503 (Core)
$ bocker rm ps_42045
Removed: ps_42045
$ bocker run img_42150 which wget
which: no wget in (/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin)
$ bocker run img_42150 yum install -y wget
Installing : wget-1.14-10.el7_0.1.x86_64 1/1
Verifying : wget-1.14-10.el7_0.1.x86_64 1/1
Installed : wget.x86_64 0:1.14-10.el7_0.1
Complete!
$ bocker ps
CONTAINER_ID COMMAND
ps_42018 yum install -y wget
ps_42182 which wget
$ bocker commit ps_42018 img_42150
Removed: img_42150
Created: img_42150
$ bocker run img_42150 which wget
/usr/bin/wget
$ bocker run img_42150 cat /proc/1/cgroup
...
4:memory:/ps_42152
3:cpuacct,cpu:/ps_42152
$ cat /sys/fs/cgroup/cpu/ps_42152/cpu.shares
512
$ cat /sys/fs/cgroup/memory/ps_42152/memory.limit_in_bytes
512000000
$ BOCKER_CPU_SHARE=1024 \
BOCKER_MEM_LIMIT=1024 \
bocker run img_42150 cat /proc/1/cgroup
...
4:memory:/ps_42188
3:cpuacct,cpu:/ps_42188
$ cat /sys/fs/cgroup/cpu/ps_42188/cpu.shares
1024
$ cat /sys/fs/cgroup/memory/ps_42188/memory.limit_in_bytes
1024000000
当前实现的功能:
docker build †
docker pull
docker images
docker ps
docker run
docker exec
docker logs
docker commit
docker rm / docker rmi
Networking
Quota Support / CGroups
文章转载自 开源中国社区[https://www.oschina.net]

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
-
上一篇
集群管理器 Mesos 能在 Windows 上运行了!
Mesosphere 和微软合作,把 Mesos 移植到 Windows,Mesos 能在 Windows Server 上运行了! Mesosphere,一家致力于构建一个基于 Mesos 项目的容器集中化“数据中心的操作系统”的公司,在 MesosCon 上公开了在 Windows Server 2016 预览版本上运行 Mesos 的第一个 demo。 微软在昨天刚刚发布了支持 Docker 容器的 Windows Server 技术预览版,开发人员都希望这些特性能很快在生产环境使用。 Mesosphere 联合创始人 Ben Hindman 说,团队跟微软在进行密切的合作,基于 Apache Mesos 项目源代码的情况下进行密切的配合。同时提到,已经有大量的 Mesosphere 企业用户提出 Windows Server 支持的需求,也已经准备好使用容器,然后使用到生产环境上。 现实中许多企业在数据中心是同时使用 Linux 和 Windows 负载。所以,使用 Mesos(Mesosphere)的用户会希望能使用一个既能在 Linux 机器又能在 Windows Serv...
-
下一篇
Google 加入 OpenStack 基金会,向容器技术迈进
一位最具重量级的新成员加入 OpenStack 基金会,这就是——Google! 双方的合作承将在例如 Murano 应用目录、Magnum 容器流程管理服务等一系列开源项目持续贡献工程资源。这使得OpenStack在同一个 Dashboard中管理虚拟的、非虚拟的、以及容器应用成为可能。这对于所有的希望尝试云的企业来说绝对是个好消息,因为他们还没准备为云环境重写所有 应用,但又希望在投身云计算时有为云优化的、全新的应用。 https://yqfile.alicdn.com/57ebdce022c4ab72cb93cb956c7f195416b154fb.png" > 当然更为重要的是,Google的加入将确保Linux 容器及关联的容器管理技术——Kubernetes(Google去年开始孵化与支持的项目),融入OpenStack平台并运行无虞,这对希望管理大量容器的大公司来说,相当具有吸引力。 OpenStack将自身视作一台集成引擎,OpenStack 首席运营官Mark Collier指出,”OpenStack是一个平台,能够确保用户运行最新的容器技术就像运行一个虚机一样...
相关文章
文章评论
共有0条评论来说两句吧...