Мое приложение имеет такую структуру:
/app
/web
/submodule
package.json
yarn.lock
Dockerfile
.gitsubmodule
docker-compose.yml
Dockerfile в / app / web:
# build
FROM node:10 AS build-env
WORKDIR /usr/src/app
COPY package.json /usr/src/app/
COPY yarn.lock /usr/src/app/
RUN yarn install
COPY . /usr/src/app/
RUN yarn build
# run
FROM nginx
COPY --from=build-env /usr/src/app/storybook-static /usr/share/nginx/html
В package.json submodule
включить в качестве зависимости:
"dependencies": {
"submodule": "file:./submodule",
Когда сборка Docker запускает команду yarn install
, выдается ошибка:
Building web
Step 1/9 : FROM node:10 AS build-env
---> c0cfd9444538
Step 2/9 : WORKDIR /usr/src/app
---> Using cache
---> 31d2e6122773
Step 3/9 : COPY package.json /usr/src/app/
---> Using cache
---> 385af24cf951
Step 4/9 : COPY yarn.lock /usr/src/app/
---> Using cache
---> 861576eec879
Step 5/9 : RUN yarn install
---> Running in edde173d5035
yarn install v1.9.2
[1/4] Resolving packages...
error Package "submodule" refers to a non-existing file '"/usr/src/app/submodule"'.
info Visit https://yarnpkg.com/en/docs/cli/install for documentation about this command.
ERROR: Service 'web' failed to build: The command '/bin/sh -c yarn install' returned a non-zero code: 1
Если работает yarn install
без докера, все в порядке. Как решить эту проблему?