2017-06-19 4 views
1

Der Versuch, eine Dockerfile mit Alpine-Image zu erstellen und installieren Satz von Verzeichnissen. Hier ist das Skript unten. Es funktioniert gut bis mkdir, ändert sich aber nicht zu/opt, um den Git Code herunterzuladen.Ändern Sie das Verzeichnis in Docker Alpine fehlgeschlagen

Der Git-Code wird nur nach/src heruntergeladen. Nicht sicher, ob der Befehl cd/opt nicht funktioniert.

FROM alpine 
ADD . /src 
WORKDIR /src 
RUN apk update 
RUN apk add git 
RUN mkdir /opt 
RUN cd /opt && git clone --recursive https://github.com/Azure/azure-iot-sdk-python.git 
RUN ls -al 
RUN cd azure-iot-sdk-python && ls -al build_all/linux 
+0

Warum nicht einfach wieder 'WORKDIR'? – johnharris85

+0

Ich kann das tun, aber würde gerne wissen, warum die oben genannten Befehle nicht funktionieren .. Wenn es ubuntu funktioniert gut. – user1050619

Antwort

3

Das aktuelle Arbeitsverzeichnis zurückgesetzt wird für jeden RUN auf den Wert der letzten WORKDIR.

So, diese Linie RUN cd azure-iot-sdk-python && ls -al build_all/linux macht es von hier /src, und Ihre geklonte Repo ist in opt.

Also dieser beiden funktioniert:

RUN cd /opt/azure-iot-sdk-python && ls -al build_all/linux 

und:

WORKDIR /opt 
RUN cd azure-iot-sdk-python && ls -al build_all/linux 
Verwandte Themen