dpkrbe395930 2019-04-02 07:46
浏览 270
已采纳

docker-ce中containerd / runc的代码在哪里?

I am trying to debug docker (including everything, docker, dockerd, containerd, runc), and have cloned source code from github/docker/docker-ce.

Now I can locate the source code of:

  • docker (docker-cli): at components/cli
  • dockerd: at components/engine/daemon

in repo of docker-ce and successfully make them.

But I cannot find the code of containerd and runc in docker-ce repo, while there are binaries of them when make command is triggered.

So where the binaries come from?

I know there are repos of containerd and runc.

  • 写回答

1条回答 默认 最新

  • dongsheng4126335 2019-04-02 12:43
    关注

    Here's my own findings from a quick scan. The Makefile for components/engine includes various steps, including a docker build.

    The Dockerfile includes sections for containerd and runc:

    FROM base AS containerd
    RUN apt-get update && apt-get install -y btrfs-tools
    ENV INSTALL_BINARY_NAME=containerd
    COPY hack/dockerfile/install/install.sh ./install.sh
    COPY hack/dockerfile/install/$INSTALL_BINARY_NAME.installer ./
    RUN PREFIX=/build/ ./install.sh $INSTALL_BINARY_NAME
    
    FROM runtime-dev AS runc
    ENV INSTALL_BINARY_NAME=runc
    COPY hack/dockerfile/install/install.sh ./install.sh
    COPY hack/dockerfile/install/$INSTALL_BINARY_NAME.installer ./
    RUN PREFIX=/build/ ./install.sh $INSTALL_BINARY_NAME
    

    Then in the hack folder for the dockerfile, there are scripts to install containerd and runc.

    These scripts clone the repo and checkout specific commits from containerd and runc's upstream repos.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 提问应符合社区要求 11月27日

悬赏问题

  • ¥15 全志v3s耳机音频输出口怎么外接功放
  • ¥15 华为ensp使用基本ACL限制公司网络访问
  • ¥15 帮我做下照片上的PLC题
  • ¥15 labview2022 使用modbus报缺少依赖?
  • ¥15 谷歌地图是不是不开通结算功能,api会使用不了哦
  • ¥15 unity腾讯云对象存储机型适配
  • ¥15 求全国交通咨询模拟代码,要求如下,可以完全在dev c++运行
  • ¥15 根据要求修改程序编码
  • ¥15 用 Python 做一个用 Excel 表导入的答题系统
  • ¥15 使用微信开发者工具实现一个“婚博会”小程序