gpt4 book ai didi

node.js - 在Docker上进行postinstall的Bower依赖

转载 作者:行者123 更新时间:2023-12-02 19:36:08 25 4
gpt4 key购买 nike

可以使用docker-compose在docker上的package.json中使用postinstall安装Bower依赖项。

package.json文件:

   {
"name": "mongocrud",
"version": "0.0.0",
"private": true,
"scripts": {
"start": "node ./config/server.js",
"postinstall": "node ./node_modules/bower/bin/bower install",
"test": "mocha"
},
"dependencies": {
//dependicies
}
}

Dockerfile:
FROM node:7.7.2-alpine

WORKDIR /application

COPY package.json .

COPY bower.json .

COPY .bowerrc .

RUN npm install -g bower

RUN npm install

COPY . .

EXPOSE 3000

CMD ["npm", "start"]

docker-compose.yml:
version: '3'

services:
mongodb:
image: mongo:3.4.4
command: mongod
container_name: mongo-container
ports:
- 27017:27017

express:
build: .
container_name: express-container
ports:
- 3000:3000
working_dir: /application

links:
- mongodb
command: npm start

在使用docker-compose up应用程序后运行良好,但缺少Bower依赖项,我可以解决该问题吗?

压力

我在docker-compose之后在控制台中找到了这个:
npm WARN lifecycle mongocrud@0.0.0~postinstall: cannot run in wd %s %s (wd=%s) mongocrud@0.0.0 node ./node_modules/bower/bin/bower install /application

谢谢

最佳答案

在安装后脚本中将node ./node_modules/bower/bin/bower install更改为bower install --allow-root--allow-root是为了防止出现权限错误。

或者,您可以删除后安装脚本,并在Dockerfile中的RUN bower install --allow-root之后添加RUN npm install

而且Bower需要git才能工作,您必须首先在Dockerfile中安装git。

关于node.js - 在Docker上进行postinstall的Bower依赖,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44962014/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com