Ubuntu Docker 源码编译(1.9.1 )详解

时间:2021-05-19

Ubuntu Docker 源码编译:

网上对Ubuntu Docker 源码编译的资料有很多,但是对于具体如何操作,和命令的实现不是多细致,经过我一番折腾,终于把源码编译搞定,这里记录下,以便以后使用参考,

一、系统环境

Ubuntu14.04 desktop 64位

二、安装Docker(Docker内编译Docker)

$ sudo apt-get update

$ sudo apt-get install wget

$ wget -qO- https://get.docker.com/ | sh

三、拉取Docker开发环境容器

# docker pull docker-dev:1.9.1

四、下载Docker源码到本地机器

# apt-get install git # mkdir -p /home/docker/src # cd /home/docker/src # git clone https://github.com/docker/docker.git # cd docker # git checkout v1.9.1

五、编译

其实Docker编译容器内自带了源码,这里第四步将源码下载到本地机器,主要是为了二次开发方便。

可以将开发好的新代码替换容器内原有的代码,进行定制开发。

1. 创建本地编译结果保存目录

# mkdir -p /home/docker/bundles

2. 启动容器,并映射本地代码到容器:

# docker run --rm -it --privileged \ -e BUILDFLAGS \ -e DOCKER_CLIENTONLY \ -e DOCKER_EXECDRIVER \ -e DOCKER_EXPERIMENTAL \ -e DOCKER_GRAPHDRIVER \ -e DOCKER_STORAGE_OPTS \ -e DOCKER_USERLANDPROXY \ -e TESTDIRS -e TESTFLAGS \ -e TIMEOUT \ -v /home/docker/bundles:/go/src/github.com/docker/docker/bundles \ -v /home/docker/src:/tmp \ docker-dev:1.9.1 \ bash

3. 在容器中编译(此命令在容器中执行):

# cp -a /tmp/docker/* /go/src/github.com/docker/docker/

# hack/make.sh binary

4. 编译完成后,退出容器,检查本地结果路径,已经生成了编译好的Docker可执行文件:

# ls -l /home/docker/bundles

六、验证

# cd /home/docker/bundles/1.9.1/binary

# ./docker version

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章