我们可以在 Docker 镜像中更新 git 版本吗?

时间:2020-12-22 16:06:14

标签: git docker docker-compose dockerfile docker-registry

我正在使用 docker 来安装我的依赖项。使用 Node:10.13.0 作为

$ gcc --version gcc (Ubuntu 7.5.0-3ubuntu1~18.04) 7.5.0

除了 FROM: node:10.13.0 之外的所有依赖项都安装良好。

它显示以下内容:

Husky

所以,问题是 Husky requires Git >=2.13.0. Got v2.11.0. husky > Failed to install 低于 2.13。

在 docker 文件中搜索 init git 版本。但我没有得到任何解决方案。

还有其他方法可以在 docker 文件中设置 git 版本吗?。

1 个答案:

答案 0 :(得分:1)

  • Next 表示 node:10.13.0 使用 debian9,也就是 stretch

    $ docker run --rm node:10.13.0 cat /etc/issue
    Debian GNU/Linux 9 \n \l
    
  • Next 表示 node:10.13.0 默认使用 git 2.11

    $ docker run --rm node:10.13.0 git --version
    git version 2.11.0
    

实际上,git apt repo中的debian 9使用的是2.11版本,如果你想升级到更新的版本,你可以使用debian backports,意思是:

<块引用>

Backports 是从下一个 Debian 发行版中获取的软件包

默认情况下,使用 backports 时不会使用 apt。您可以使用下一个示例来启用此功能。

Dockerfile:

FROM node:10.13.0
RUN echo "deb http://deb.debian.org/debian stretch-backports main contrib non-free" >> /etc/apt/sources.list; \
    apt-get update; \
    apt-get -t stretch-backports install git -y

验证:

$ docker build -t mynodeimage .
Sending build context to Docker daemon  2.048kB
Step 1/2 : FROM node:10.13.0
......
Successfully tagged mynodeimage:latest
$ docker run --rm mynodeimage git --version
git version 2.20.1