Docker Container Volumes dall'accesso della directory in istruzioni CMD
Domanda
Docker Container Volumes dalla directory Access in ISTRUZIONE CMD
$ sudo docker run -d --name ext -v /external busybox /bin/sh
e
run.sh
#!/bin/bash
if [[ -f "/external" ]]
then
echo 'success!'
else
echo 'Sorry, I can't find /external...'
fi
.
e
Dockerfile
FROM ubuntu:14.04
MAINTAINER newbie
ADD run.sh /run.sh
RUN chmod +x /run.sh
CMD ["bash", "/run.sh"]
.
e
$ sudo docker build -t app .
e
$ sudo docker run -d --volumes-from ext app
ac57afb95f923eeffd28e7d9d9cb76cb1b7699ebd
SO
$ sudo docker logs ac57afb95f923eeffd28e7d9d9cb76cb1b7699ebd
Sorry, I can't find /external...
La mia domanda è,
Come posso accedere alla directory /external
in run.sh
nell'istruzione CMD
impossibile?
Grazie ~
Soluzione
Modifica il tuo run.sh
-f
è il controllo del file esistente.In questo caso utilizzare il controllo -d
per la directory esistente.
Controlla se una directory esiste in AScript Shell
Verthermore Se vuoi fare solo il contenitore del volume, non è necessario aggiungere -d
, /bin/sh
Modifica del comando Esegui del contenitore del volume Come questa
$ sudo docker run --name ext -v /external busybox