Dockerize框架测试“无法执行”

时间:2017-10-03 13:11:41

标签: node.js docker docker-compose galen

我想将galenframework测试停靠。这是我目前的情况:

DockerFile

FROM node:8.6
RUN mkdir -p /usr/src/galen
WORKDIR /usr/src/galen
COPY package.json /usr/src/galen/
RUN npm install
COPY . /usr/src/galen

搬运工-compose.yml

version: '2'
services:
  galenframework:
    build:
      context: .
      dockerfile: Dockerfile
    volumes:
      - .:/usr/src/galen

的package.json

{
  "name": "docker_galen",
  "version": "1.0.0",
  "description": "Node.js on Docker with Galen",
  "dependencies": {
    "galenframework-cli": "2.3.5"
  }
}
运行docker-compose up -d

我收到以下错误:

  

info安装意外退出npm信息生命周期   galenframework-cli@2.3.5~postinstall:无法执行postinstall   脚本npm WARN docker_galen@1.0.0没有存储库字段。警告   docker_galen@1.0.0没有许可证字段。错误的ERR!代码ELIFECYCLE npm ERR!   错误1 npm ERR! galenframework-cli@2.3.5 postinstall:node   postinstall.js npm ERR!退出状态1 npm ERR!错误的ERR!失败了   galenframework-cli@2.3.5 postinstall脚本。错误的ERR!这可能是   不是npm的问题。可能有额外的日志输出   上方。

我该如何解决这个问题?

1 个答案:

答案 0 :(得分:1)

你需要Java来运行Galen,所以这应该可行

FROM java:8

ENV NVM_DIR /usr/local/nvm
ENV NODE_VERSION 6.11.4
ENV GALEN_VERSION 2.3.5

# Install nvm with node and npm
RUN curl https://raw.githubusercontent.com/creationix/nvm/v0.31.0/install.sh | bash \
    && . $NVM_DIR/nvm.sh \
    && nvm install $NODE_VERSION \
    && nvm alias default $NODE_VERSION \
    && nvm use default \
    && npm install -g galenframework-cli@$GALEN_VERSION

ENV NODE_PATH $NVM_DIR/v$NODE_VERSION/lib/node_modules
ENV PATH      $NVM_DIR/v$NODE_VERSION/bin:$PATH