首页 > 解决方案 > ubuntu 容器安装 rvm 失败

问题描述

我正在尝试使用以下 dockerfile 在 ubuntu docker 映像中安装 rvm

FROM ubuntu:18.04

ARG DEBIAN_FRONTEND=noninteractive
RUN apt-get update -q && \
    apt-get install -qy procps curl ca-certificates gnupg2 build-essential --no-install-recommends && apt-get clean

RUN curl -sSL https://rvm.io/mpapis.asc | gpg2 --import -
RUN curl -sSL https://rvm.io/pkuczynski.asc | gpg2 --import -

RUN curl -sSL https://get.rvm.io | bash -s stable

RUN . /etc/profile.d/rvm.sh

RUN rvm install 1.9.3-dev

但最后我得到了命令

Step 8/9 : RUN rvm install 1.9.3-dev
 ---> Running in 1b1c6454868d
/bin/sh: 1: rvm: not found
The command '/bin/sh -c rvm install 1.9.3-dev' returned a non-zero code: 127

一个想法这里有什么问题?

标签: dockerdockerfile

解决方案


该命令. /etc/profile.d/rvm.sh不会持续到下RUN一层。该 shell 文件修改了一些东西,比如PATH变量,没有它,rvm将无法在PATH. 您可以获取它并rvm在同一层中运行。

RUN bash -c "source /etc/profile.d/rvm.sh && rvm install 1.9.3-dev"

此外,请参阅有关Docker 中的 rvm 的相关答案。


推荐阅读