docker 开发编译环境搭建

小灰灰 2022-03-18 09:16 390阅读 0赞

一、生成docker编译环境镜像:dockercore/docker

在docker源代码目录,执行docker build,时间比较长,由于国内众所周知的原因,很多包下载不下来,会编译失败,建议翻-墙或者记录下来缺少的包,手动下载,然后重新docker build,具体过程和踩过得坑如下:

  1. 清除docker中的容器
    确认没运行中的容器,使用docker命令:

docker ps -a

如果有运行中的容器和镜像,使用下面的命令可以清空容器
docker rm $(docker ps -a -q)

  1. 清除系统中的镜像
    确认系统中没有镜像,使用如下命令:

docker images

如果存在镜像,使用下面的命令清除:

docker rmi -f $(docker images -q -a -f dangling=true)

  • 清除所有镜像和容器,保证环境干净 ,执行docker build 生成编译容器
  • make BIND_DIR=. shell

    4.

    二、在容器中build docker 源代码

    切换到源代码根目录,执行如下命令:

    1. sudo docker run -it --rm --privileged --name docker-dev -v $(pwd):/go/src/github.com/docker/docker dockercore/docker /bin/bash
    2. ./hack/make.sh binary
    3. cp bundles/1.12.0-dev/binary-client/docker* /usr/bin/
    4. cp bundles/1.12.0-dev/binary-daemon/docker* /usr/bin/

    执行命令后,即进入容器,在容器中执行编译命令:

    ./hack/make.sh binary

    编译完成后,复制文件到bin目录,如下:

    root@a8b2885ab900:/go/src/github.com/docker/docker# cp bundles/1.12.0-dev/binary-client/docker* /usr/bin/
    root@a8b2885ab900:/go/src/github.com/docker/docker# cp bundles/1.12.0-dev/binary-daemon/docker* /usr/bin/

    启动容器:

    docker daemon -D&

    测试容器是否正常:

    docker run hello-world

    执行过程抓图如下:
    这里写图片描述

    默认没有设置镜像仓库,可以通过一下代码设置镜像仓库,国内镜像源

    1. sudo mkdir -p /etc/docker
    2. sudo tee /etc/docker/daemon.json <<-'EOF'
    3. {
    4. "registry-mirrors": ["https://5162s31v.mirror.aliyuncs.com"]
    5. }
    6. EOF
    7. sudo systemctl daemon-reload
    8. sudo systemctl restart docker
  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. ## 三、更改代码,然后重新编译 ##
  10. 试着修改一下代码,打开源代码,找到docekr info 命令,在dockerapiclientsysteminfo.go,修改里面的
  11. Containers ecloud test Containers:
  12. 如下图所示
  13. ![这里写图片描述][Image 1]
  14. docker中编译修改后的源代码:执行如下命令:
  15. docker run -i -t privileged rm name docker-dev -v $(pwd):/go/src/github.com/docker/docker dockercore/docker bash
  16. ./hack/make.sh binary
  17. cp bundles/1.12.0-dev/binary-client/docker\* /usr/bin/
  18. cp bundles/1.12.0-dev/binary-daemon/docker\* /usr/bin/
  19. 最终效果如下:
  20. ![这里写图片描述][Image 1]

[Image 1]:

发表评论

表情:
评论列表 (有 0 条评论,390人围观)

还没有评论,来说两句吧...

相关阅读

    相关 Docker PHP 开发环境

    docker搭建php环境,因为是本地的开发环境,所以想多尝尝鲜,尽量使用高版本的软件来实现。 希望能给同样有需要搭建环境的同学起到一些帮助,少踩一些坑,如果能按照这篇文章的

    相关 Docker PHP 开发环境

    docker搭建php环境,因为是本地的开发环境,所以想多尝尝鲜,尽量使用高版本的软件来实现。 希望能给同样有需要搭建环境的同学起到一些帮助,少踩一些坑,如果能按照这篇文章的

    相关 docker环境

    docker有免费版本和收费的企业版本,企业版本无非是增加了一些安全性方面的集成,一般企业会选择docker CE免费版本,安全性方面,绝大部分企业都是自己实现内部的安全集成。

    相关 Docker环境

    一,虚拟机环境搭建     \ Linux镜像要求CentOS版本为7,且内核大于3.10     \ 具体安装步骤不做演示,只对几个遇到的问题进行说明