Моя структура папок выглядит следующим образом (monorepo):
project
|
+--- /api
| |
| +--- /.offline-cache
| +--- /src
| | +--- index.js
| | +--- ...
| |
| +--- Dockerfile
| +--- package.json
| +--- yarn.lock
|
+--- /common
| |
| +--- /src
| | +--- index.js
| |
| +--- package.json
|
+--- /ui
| |
| +--- /.offline-cache
| +--- /src
| | +--- index.js
| | +--- ...
| |
| +--- Dockerfile
| +--- package.json
| +--- yarn.lock
|
+--- docker-compose.yml
Работают автономный кеш и сборка docker-образов для каждого «сервиса» (ui, api).
Теперь я хочу получить доступ / установить модуль common
внутри api
и ui
.
Запуск yarn add ./../common
внутри /api
работает и устанавливает модуль в папку api
и добавляет его в файл package.json
и yarn.lock
.
Но когда я пытаюсь восстановить образ докера, я получаю сообщение об ошибке
error Package "" refers to a non-existing file '"/common"'.
потому что в контейнере Docker нет папки common
, а установленный пакет не добавляется в автономное зеркало: (
Я не могу скопировать папку common
в образ докера, потому что он находится вне контекста сборки, и я не хочу публиковать в NPM. Что еще я могу сделать, чтобы заставить это работать?