Frage

Docker-Container-Volumes aus dem Verzeichniszugriff in der CMD-Anweisung

$ sudo docker run -d --name ext -v /external busybox /bin/sh

Und

run.sh

#!/bin/bash

if [[ -f "/external" ]]
then
    echo 'success!'
else
    echo 'Sorry, I can't find /external...'
fi

Und

Docker-Datei

FROM ubuntu:14.04

MAINTAINER newbie

ADD run.sh /run.sh

RUN chmod +x /run.sh

CMD ["bash", "/run.sh"]

Und

$ sudo docker build -t app .

Und

$ sudo docker run -d --volumes-from ext app ac57afb95f923eeffd28e7d9d9cb76cb1b7699ebd

Also

$ sudo docker logs ac57afb95f923eeffd28e7d9d9cb76cb1b7699ebd Sorry, I can't find /external...

Meine Frage ist,

Wie kann ich darauf zugreifen? /external Verzeichnis in run.sh In CMD Anweisung

unmöglich?

Danke~

War es hilfreich?

Lösung

Ändern Sie Ihre run.sh

-f Es wird geprüft, ob die Datei vorhanden ist.in diesem Fall verwenden -d Überprüfen Sie, ob das Verzeichnis vorhanden ist.

Überprüfen Sie, ob in einem Shell-Skript ein Verzeichnis vorhanden ist

Wenn Sie außerdem nur einen Volumencontainer erstellen möchten, müssen Sie ihn nicht hinzufügen -d, /bin/shÄndern Sie den Befehl zum Ausführen des Volume-Containers wie folgt

$ sudo docker run --name ext -v /external busybox

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top