Почему не удается найти yarn.lock в моем контейнере Docker? - PullRequest
0 голосов
/ 20 июня 2020

Я запускаю один сценарий Node.js, например: docker run -it --rm -u node --name build_container -v $(pwd):/home/node/app -w "/home/node/app" node:lts bash -c "yarn install --no-cache --frozen-lockfile".

Однако в журнале сценария отображаются info No lockfile found и, что еще более странно, сообщение с package-lock. json найдено. Однако в рабочем каталоге нет package-lock .

введите описание изображения здесь

Есть идеи, в чем может быть проблема?

1 Ответ

0 голосов
/ 20 июня 2020

Я бы посоветовал использовать ваш собственный Dockerfile для создания вашего образа - а затем запустить его внутри сборки - например:

Dockerfile

FROM node:12-alpine

# Create work directory
RUN mkdir -p /express
WORKDIR /express

# Bundle app sources
COPY . .

# Build app
RUN yarn install --prod --frozen-lockfile && yarn run build

EXPOSE 3000

# Set default NODE_ENV to production
ENV NODE_ENV production
ENTRYPOINT [ "yarn", "start" ]

.dockerignore

node_modules
build
dist
config
docs
*.log
.git
.vscode

А затем создайте образ: docker build -t <your image name> -f <Dockerfile (if omitted uses local folder .Dockerfile> <path to code your code>

После сборки запустите его, как обычный образ - так как все уже есть.

...