Может ли узел, работающий локально, требовать файл из контейнера docker? - PullRequest
0 голосов
/ 14 февраля 2020

Я думаю, что название действительно говорит само за себя, но только для пояснения, скажем, я запускаю нод, как на моем macbook:

node file1.js
//file1.js
require("some/secret/path/to/a/file/in/a/docker/container")

это возможно?

Если так, то я хотел бы знать, каким может быть этот секретный путь. Спасибо!

1 Ответ

1 голос
/ 14 февраля 2020

Мне не известен абсолютный путь, по которому можно получить доступ к вашему контейнеру, но у вас есть несколько вариантов:

Вы можете запустить свой контейнер с привязанным томом, чтобы получить доступ к общему ресурсу папка.

Например, на вашем хост-компьютере вы можете создать папку:

mkdir /home/user/shared_folder

Затем запустите контейнер, связывающий эту папку:

docker run -v /home/user/shared_folder:/some_path/in/your/container some_image

В любое время Контейнер изменяет эту папку, добавляет что-то, удаляет что-то, ваш хост-компьютер также сможет увидеть эти изменения.

Другой вариант - использовать docker cp и копировать нужные файлы из ваш контейнер к вашему хосту.

Вы можете сделать это с помощью child_process's.

  var exec = require('child_process').exec;

    exec("docker cp container_id:/some_text host_path")
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...