首页 > 解决方案 > 当 Openshift 构建容器失败时在 Dockerfile 中安装 nvm:返回非零代码:1

问题描述

我需要使用 Java 和 NodeJS 12 构建一个容器。以下 Dockerfile在本地可以正常工作

FROM fabric8/java-centos-openjdk11-jdk:1.6.5
RUN echo "Base JDK11"

USER root

RUN curl -k -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.35.3/install.sh | bash
RUN source $HOME/.bashrc && nvm install 12.14.1

RUN ln -s $HOME/.nvm/versions/node/v12.14.1/bin/node /usr/bin/node
RUN ln -s $HOME/.nvm/versions/node/v12.14.1/bin/npm /usr/bin/npm

RUN node -v
RUN npm -v

然而,实际的容器是在 Openshift 中构建的,对于同一个 Dockerfile,它失败了returned a non-zero code: 1

Step 9/15 : RUN source $HOME/.bashrc && nvm install 12.14.1
---> Running in 951805b39667

Removing intermediate container 951805b39667
error: build error: The command '/bin/sh -c source $HOME/.bashrc && nvm install 12.14.1' returned a non-zero code: 1

标签: node.jsdockeropenshiftnvm

解决方案


推荐阅读