Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angular/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angular 码头工人有棱角,勒纳不在大楼内_Angular_Docker_Lerna - Fatal编程技术网

Angular 码头工人有棱角,勒纳不在大楼内

Angular 码头工人有棱角,勒纳不在大楼内,angular,docker,lerna,Angular,Docker,Lerna,我正试图通过docker从我的lerna monorepo部署一个Angular客户端 为此,我创建了以下Docker文件 # Build environment FROM node:12.2.0-alpine as build # Work dir WORKDIR /usr/src/app # Set env values ENV LOG_LEVEL=debug ENV NODE_ENV=production # Add lerna COPY package.json . COPY le

我正试图通过docker从我的lerna monorepo部署一个Angular客户端

为此,我创建了以下Docker文件

# Build environment
FROM node:12.2.0-alpine as build

# Work dir
WORKDIR /usr/src/app

# Set env values
ENV LOG_LEVEL=debug
ENV NODE_ENV=production

# Add lerna
COPY package.json .
COPY lerna.json .
RUN npm i lerna @angular/cli -g --loglevel notice

# Copy packages
COPY packages/client ./packages/client

# bootstrap
RUN yarn install --production --no-optional
RUN lerna bootstrap --scope=@proj/client -- --production --no-optional

# build
RUN lerna run build:prod --scope=@proj/client

# Run environment
FROM nginx:1.16.0-alpine
COPY --from=build ./packages/client/dist/client /usr/share/nginx/html
COPY --from=build ./packages/client/.nginx/nginx.conf /etc/nginx/conf.d/default.conf

EXPOSE 80
CMD ["nginx", "-g", "daemon off;"]

但是当运行
docker build-t test-f packages/client/Dockerfile.
时,会出现以下错误:

lerna notice cli v3.22.1
lerna notice filter including "@proj/client"
lerna info filter [ '@proj/client' ]
lerna info Executing command in 1 package: "yarn run build:prod"
lerna ERR! yarn run build:prod exited 127 in '@proj/client'
lerna ERR! yarn run build:prod stdout:
yarn run v1.15.2
$ ng build --prod
info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.

lerna ERR! yarn run build:prod stderr:
An unhandled exception occurred: Cannot find module '@angular-devkit/build-angular/package.json'
Require stack:
- /usr/local/lib/node_modules/@angular/cli/node_modules/@angular-devkit/architect/node/node-modules-architect-host.js
- /usr/local/lib/node_modules/@angular/cli/node_modules/@angular-devkit/architect/node/index.js
- /usr/local/lib/node_modules/@angular/cli/models/architect-command.js
- /usr/local/lib/node_modules/@angular/cli/commands/build-impl.js
- /usr/local/lib/node_modules/@angular/cli/node_modules/@angular-devkit/schematics/tools/export-ref.js
- /usr/local/lib/node_modules/@angular/cli/node_modules/@angular-devkit/schematics/tools/index.js
- /usr/local/lib/node_modules/@angular/cli/utilities/json-schema.js
- /usr/local/lib/node_modules/@angular/cli/models/command-runner.js
- /usr/local/lib/node_modules/@angular/cli/lib/cli/index.js
- /usr/local/lib/node_modules/@angular/cli/lib/init.js
- /usr/local/lib/node_modules/@angular/cli/bin/ng
See "/tmp/ng-OFgChe/angular-errors.log" for further details.
error Command failed with exit code 127.
我尝试了几种#引导块的组合:

  • 我尝试过使用和不使用
    纱线安装
  • 我已尝试删除
    --生产
    --无可选
    标志
  • 我已经尝试将
    devDependencies
    移动到根
    package.json
在本地运行这些命令(在已清理的工作文件夹上)效果很好,但在docker构建中,它们中的每一个都给了我相同的结果。所以并不是说
@angular devkit
没有列为dependecy


有人知道怎么解决这个问题吗?

知道怎么解决了。 显然,无论有没有
——生产
,对我们来说都无关紧要

将其更改为
--production=false
或将
节点_ENV
更改为其他内容可以解决此问题