TiDB镜像构建时带有dirty后缀的问题

因为安全需求,我们需要更换TiDB的底层镜像
但按照官方教程打包镜像的时候遇到了一个问题
我发现打包后的TiDB镜像带有一个dirty的后缀,排查后发现原因如下

  1. TiDB Repo中有一个.dockerignore,其中包含Dockerfile
  2. 打包指令会把TiDB Repo作为工作目录,并将其中的文件拷贝到镜像中进行编译
-- 打包
docker build --load -t localhost/tidb:local-build -f dockerfiles/cd/builders/tidb/Dockerfile ../tidb
-- 复制Repo到镜像内部编译
-- https://github.com/PingCAP-QE/artifacts/blob/main/dockerfiles/cd/builders/tidb/Dockerfile#L30
COPY . /ws
  1. 此时因为工作目录中的ignore,COPY会忽略Repo中原有的Dockerfile,这就会导致COPY的内容缺失,编译时发现内容出现了变动,LDFLAGS被标记为dirty

我想要把这个dirty去掉,麻烦问一下该怎么做?

把dockerignore删了再打