2014-10-31 6 views
1

У меня есть изображение докера, у которого есть start.sh. приложение начинается с файла конфигурации. где я могу поставить файл конфигурации так, чтобы start.sh мог его прочитать?Как читать данные из файла во время работы изображения докеров

sudo docker run -i -t -p 9000:9000 localhost:5000/catalog-services_new /src/start.sh package.json 

Предположим, я хочу прочитать содержимое своего пакета.json, как я могу это сделать.

Спасибо.

+0

Вы хотите, чтобы package.json внутри вашего контейнера или вашего хоста? – cthulhu

+0

Package.json будет на моем хосте. – Sohan

ответ

1

Вы можете смонтировать package.json как объем данных:

http://docs.docker.com/userguide/dockervolumes/#mount-a-host-file-as-a-data-volume

docker run -it -v $(pwd)/package.json:/tmp/package.json debian:jessie bash 
[email protected]:/# cat /tmp/package.json 
{ 

} 
+0

У меня теперь подобный подход, но вместо загрузки файла package.json я буду хранить файл каталога хоста и монтировать этот путь и читать оттуда. Файл Mouting не ищет меня из точки разработки. – Sohan

+0

Пока у вас есть один файл для монтирования, я думаю, все в порядке. – cthulhu

+0

Да согласен. Спасибо, что указали ссылку, хотя – Sohan

0

Вы можете поместить его в любом месте:

COPY package.json /usr/local/etc/package.json 
COPY start.sh /usr/local/bin/start.sh 

В start.sh:

cat /usr/local/etc/package.json 
+0

Предположим, у меня есть файл, в котором doenot поставляется с изображением, скажем, файл connection_config, который предоставляется конечным клиентом, в этом случае, что мы можем сделать? – Sohan

 Смежные вопросы

  • Нет связанных вопросов^_^