为什么我不能将.git文件夹复制到我的Docker容器中

时间:2019-01-11 15:42:33

标签: git typescript docker sonarqube copy

我们有一个node.js / typescript项目,现在我应该为声纳分析提供数据。

我们使用docker容器在测试完成后运行测试,然后运行声纳分析,因此我们可以使用测试中的代码覆盖率报告。

唯一的问题是,责任信息缺失。这就是为什么我尝试将.git文件夹复制到docker容器中的原因,但到目前为止我没有成功。这是我的Dockerfile的内容。

FROM node:11.6-alpine
RUN apk --update add openjdk8-jre

WORKDIR /dist

COPY package*.json ./

RUN npm install

COPY src/ ./src/
COPY test/ ./test/
COPY ts*.json ./
COPY sonar-project.properties ./
COPY test.sh /
COPY .git/ ./

RUN chmod +x /test.sh

CMD ["sh", "/test.sh"]

我已经读到,.dockerignore文件可以用于排除文件或文件夹,但是我们没有使用这种文件,我还尝试创建一个仅包含node_modules的文件,但这也行不通。

有人知道如何包括它吗?我只找到“如何从Docker容器中排除.git”,但到目前为止,还原这些提示并没有帮助。

编辑:使用COPY . ./使其变得更加陌生时,请将.git文件夹包含在图像中。

1 个答案:

答案 0 :(得分:2)

您将.git文件夹的内容复制到/ dist目录中,而不是.git文件夹本身。如果要复制文件夹,请将目标指定为要创建的文件夹:

COPY .git/ ./.git/