当前位置: 首页 > 编程笔记 >

Ubuntu Docker 源码编译(1.9.1 )详解

何修能
2023-03-14
本文向大家介绍Ubuntu Docker 源码编译(1.9.1 )详解,包括了Ubuntu Docker 源码编译(1.9.1 )详解的使用技巧和注意事项,需要的朋友参考一下

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 

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

 类似资料:
  • 本文向大家介绍详解Hadoop2.7.2 编译64位源码,包括了详解Hadoop2.7.2 编译64位源码的使用技巧和注意事项,需要的朋友参考一下 一、环境准备 1.CentOS配置 最好是用新克隆的虚拟机 ,虚拟机内存设置大一点(我设置的4G),配置网络,主机名,关闭防火墙,关闭selinux 注意:采用root角色编译,减少文件夹权限出现问题 2.jar包准备(hadoop源码、JDK8、ma

  • 有些情况下,比如我们自己从Github下载了最新的代码,或者自己临时修改了一点代码,想要编译后的Build文件夹的内容,需要自行编译源码,这里介绍一下编译的方法 下载源码之后,可以发现根目录存在一个gulpfile.js文件,编译源码就是使用 gulp 编译的成果有四部分, – 生成Apps文件夹,包括helloworld程序和沙盒Sandcastle – 编译后的部署环境下的Cesium文件夹

  • Swift(5.3.2) 源码编译 编译环境 Big Sur 11.2(20D64) Python3 3.9.1 CMake 3.19.3 Ninja 1.10.2 Sccache 0.2.13 (可选) Xcode 12.4(12D4e) 第一次编译失败, CMake 版本为3.17.2, 之前本地编译OCLint时安装的一个版本, 如果编译的是更新的源码, 注意版本; Xcode版本与Swif

  • 主要内容:1.1 前期准备工作,1.2 jar包安装,1.3 编译源码1.1 前期准备工作 1. CentOS联网 配置CentOS能连接外网。Linux虚拟机ping www.baidu.com 是畅通的 注意:采用root角色编译,减少文件夹权限出现问题 2. jar包准备(hadoop源码、JDK8、maven、ant 、protobuf) (1)hadoop-2.7.2-src.tar.gz (2)jdk-8u144-linux-x64.tar.gz (3)

  • 现在 (Nutz-1.b.38) 之后的版本,源码的即时更新都会在 Github 上进行。当然,我们 也会在其他平台上比如 Git@OSC 也有托管,但是,我们还是得说, Nutz 最鲜活的更新,只有从 Github 上才能看的到哦。 如何使用 Git,什么是 Git ? 如果你问出上面的问题,建议你 Google 一下,基本上各种介绍满天飞,如果你想尝试装个玩玩,我觉得 这篇文章 还不错。 如果

  • 编译solidity源代码 通过solc编译器编译solidity代码到字节码。你可以参考solidity安装文档在本地安装编译器。 编写solidity代码运行: $ solc <contract>.sol --bin --abi --optimize -o <output-dir>/ bin和ABI编译器参数都需要充分利用web3j中的智能合约。 bin,输出包含十六进制编码的solidit

  • git clone https://github.com/Meituan-Dianping/octo-rpc.git octo-rpc 2.构建Jar包 环境要求: Java version >= 1.7 Maven version >= 3.0 切换到dorado目录 cd octo-rpc/dorado 本地install,执行后在本地仓库~/.m2/repository/com/meit

  • 本文向大家介绍spring源码下载、编译、debug的详细教程,包括了spring源码下载、编译、debug的详细教程的使用技巧和注意事项,需要的朋友参考一下 零、资源准备及环境配置 记安装时间:2020.02.20 环境准备: 1、idea2019.3.3旗舰版,免费试用30天版本 2、gradle5.6版本 3、jdk1.8.0_202 4、spring源码。 spring源码下载链接:htt