тома контейнера докеров из доступа к каталогу в инструкции CMD
Вопрос
тома контейнера докеров из доступа к каталогу в инструкции CMD
$ sudo docker run -d --name ext -v /external busybox /bin/sh
и
run.sh
#!/bin/bash
if [[ -f "/external" ]]
then
echo 'success!'
else
echo 'Sorry, I can't find /external...'
fi
и
Докерфайл
FROM ubuntu:14.04
MAINTAINER newbie
ADD run.sh /run.sh
RUN chmod +x /run.sh
CMD ["bash", "/run.sh"]
и
$ sudo docker build -t app .
и
$ sudo docker run -d --volumes-from ext app
ac57afb95f923eeffd28e7d9d9cb76cb1b7699ebd
Так
$ sudo docker logs ac57afb95f923eeffd28e7d9d9cb76cb1b7699ebd
Sorry, I can't find /external...
Мой вопрос в том,
Как я могу получить доступ /external
каталог в run.sh
в CMD
инструкция
невозможный?
Спасибо~
Решение
изменить свой run.sh
-f
проверяется наличие файла.в этом случае используйте -d
проверьте наличие каталога.
Проверьте, существует ли каталог в сценарии оболочки
более того, если вы хотите создать только объемный контейнер, не нужно добавлять -d
, /bin/sh
изменить команду запуска контейнера тома следующим образом
$ sudo docker run --name ext -v /external busybox