docker - 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
一个想法这里有什么问题?
解决方案
该命令. /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 的相关答案。
推荐阅读
- ruby - Ruby Kafka 未捕获异常:找不到组协调员
- javascript - JS - 如何从数组中删除其他数组中存在的项目?
- r - 如何在使用 removeUI 删除元素后清理“输入”
- python - 如果有来自另一个列表的项目,则在 python 中附加列表
- php - 在 Woocommerce 中将销售价格替换为常规价格
- rxjs - 添加到之前的结果,Observable 管道只运行一次
- macos - IntelliJ 在 scala 中显示简单应用程序的错误突出显示
- c# - 使用 foreach 和 @Html.DropDownListFor 我的 ID 都是一样的
- math - 逐个向量旋转
- ios - 观察多个 controlEvent 导致“检测到重入异常。”警告消息