тома контейнера докеров из доступа к каталогу в инструкции CMD

StackOverflow https://stackoverflow.com//questions/25000372

  •  20-12-2019
  •  | 
  •  

Вопрос

тома контейнера докеров из доступа к каталогу в инструкции 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

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top