gpt4 book ai didi

git - Dockerfile 'RUN git clone' 删除中间容器

转载 作者:太空狗 更新时间:2023-10-29 13:59:53 25 4
gpt4 key购买 nike

我在 Windows 7 上使用 Boot2Docker 通过 Dockerfile 构建我的开发环境。当我运行 docker build -t myimage dir/of/docker/file 时,一切正常,直到这一行:

RUN git clone --verbose https://github.com/zsh-users/antigen ~/.antigen/antigen

这行的输出是:

Step 12 : RUN git clone --verbose https://github.com/zsh-users/antigen ~/.antigen/antigen
---> Running in 26cba91e912a
Cloning into '/root/.antigen/antigen'...
POST git-upload-pack (302 bytes)
---> e0012659884b
Removing intermediate container 26cba91e912a
Successfully built e0012659884b

(公共(public)存储库的)克隆被删除,容器中不存在 ~/.antigen/antigen。“Cloning into...”是红色的,所以我认为这个命令有问题。但是如果我在容器的 shell 中运行它(通过 docker run -it myimage 打开)它会克隆它。

我做错了什么,或者我可以做一些设置以在 dockerfile 中使用 git clone 吗?以下是它的全部内容:

FROM debian:testing
MAINTAINER BimbaLaszlo

RUN apt-get update

RUN apt-get install -y curl

RUN apt-get install -y gcc g++ make
RUN apt-get install -y ctags
RUN apt-get install -y git

RUN apt-get install -y python python-pip python3 python3-pip

RUN apt-get install -y ruby ruby-dev
RUN gem install ripper-tags gem-ripper-tags
RUN gem install pry byebug

RUN apt-get install -y zsh
RUN git clone --progress --verbose https://github.com/zsh-users/antigen ~/.antigen/antigen

最佳答案

您看到的红色不是错误造成的。这是因为 git clone 没有使用 STDOUT,我们可以通过以下命令验证它:

$ git clone --progress --verbose https://github.com/zsh-users/antigen > /dev/null
Cloning into 'antigen'...
POST git-upload-pack (255 bytes)
remote: Counting objects: 1291, done.
remote: Total 1291 (delta 0), reused 0 (delta 0), pack-reused 1291
Receiving objects: 100% (1291/1291), 1.10 MiB | 900.00 KiB/s, done.
Resolving deltas: 100% (688/688), done.
Checking connectivity... done.

$ git clone --progress --verbose https://github.com/zsh-users/antigen 2&> /dev/null

在第一个命令中,我将所有的STDOUT重定向到/dev/null,我们仍然可以看到输出。但是在第二个命令中,我将所有 STDERR 重定向到 /dev/null,所以我们什么也没看到。

并且在 docker build 中,如果任何输出不在 STDOUT 中,它将变为红色。就是这样。

所以你的 Dockerfile 没有问题。

关于git - Dockerfile 'RUN git clone' 删除中间容器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30675376/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com