如何使用Dockerfile克隆git repo

时间:2018-01-20 15:18:44

标签: git docker dockerfile

我是Docker的初学者。我开始写一个小Dockerfile。我无法使用以下Dockerfile克隆我的回购。

FROM mattes/hello-world-nginx
RUN apt-get update && apt-get install -y git
RUN git clone https://github.com/umairnow/LocalizableGenerator.git
VOLUME LocalizableGenerator

我不确定我做得对,还是我必须使用WORKDIR。我也试过了,但它没有克隆回购。

VOLUME ["/data"]
WORKDIR /LocalizableGenerator

有人可以帮忙吗?

2 个答案:

答案 0 :(得分:1)

您的git clone确实有效:

$ docker build . -t test
...
Successfully built 5370e446d719
Successfully tagged test:latest
$ docker run -ti test /bin/bash
root@1377e0a4735d:/# cd LocalizableGenerator/
root@1377e0a4735d:/LocalizableGenerator# git log | head
commit 289a77330eefb7abaa90ca61e4226a3c29896e58
Author: Umair Aamir <umair@myworkout.no>
Date:   Tue Jan 9 13:04:16 2018 +0100

    Improved get input method. Now user can just drag drop file path or paste file path to generate translation files.

commit e3aa870362b24765095eb80d7aa7910964c010f0
Author: Umair Aamir <umair@myworkout.no>
Date:   Tue Jan 9 12:51:57 2018 +0100

root@1377e0a4735d:/LocalizableGenerator#

我不认为你想要VOLUME指令。 VOLUME用于将容器外部的目录挂载到容器本身。在这里,您已经拥有容器中的目录。

答案 1 :(得分:0)

您可以在本地克隆repo(在docker文件中),然后使用&#34; COPY&#34;或者&#34; ADD&#34;将代码放入Docker镜像的说明。 它可以让你在没有git相关软件的情况下保持图像清晰。