当前位置: 首页 > 知识库问答 >
问题:

在Docker中使用rbenv

周承天
2023-03-14

我正在尝试使用Dockerfile设置rbenv,但在rbenv Install上失败了。我有ruby-build在里面,但它似乎不起作用。

Dockerfile的相关部分(主要来自https://gist.github.com/deepak/5925003):

# Install rbenv
RUN git clone https://github.com/sstephenson/rbenv.git /usr/local/rbenv
RUN echo '# rbenv setup' > /etc/profile.d/rbenv.sh
RUN echo 'export RBENV_ROOT=/usr/local/rbenv' >> /etc/profile.d/rbenv.sh
RUN echo 'export PATH="$RBENV_ROOT/bin:$PATH"' >> /etc/profile.d/rbenv.sh
RUN echo 'eval "$(rbenv init -)"' >> /etc/profile.d/rbenv.sh
RUN chmod +x /etc/profile.d/rbenv.sh

# install ruby-build
RUN mkdir /usr/local/rbenv/plugins
RUN git clone https://github.com/sstephenson/ruby-build.git /usr/local/rbenv/plugins/ruby-build

ENV PATH /usr/local/rbenv/shims:/usr/local/rbenv/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

# Set to Ruby 2.0.0-p247
RUN rbenv install 2.0.0-p247
RUN rbenv rehash
RUN rbenv local 2.0.0-p247

错误:

Step 21 : RUN rbenv install 2.0.0-p247
 ---> Running in 8869fa8f0651
rbenv: no such command `install'
Error build: The command [/bin/sh -c rbenv install 2.0.0-p247] returned a non-zero code: 1
The command [/bin/sh -c rbenv install 2.0.0-p247] returned a non-zero code: 1

共有1个答案

卢俊发
2023-03-14

您缺少了ruby-build的一个安装步骤:您需要在克隆它之后运行它的install.sh

 类似资料:
  • 问题内容: 我目前正在尝试使用 Google App Engine灵活环境 ,特别是该功能允许您通过提供Dockerfile 来构建自定义运行时。 Docker提供了一个非常好的功能,用于定义和运行多容器Docker应用程序。 现在的问题是,有没有办法可以在GAE中使用docker- compose的功能?如果答案是否定的,那么使用Docker在GAE灵活环境中部署多容器应用程序(例如Nginx

  • 运行诸如之类的git命令

  • 我目前正在尝试谷歌应用引擎灵活的环境,特别是允许您通过提供Dockerfile来构建自定义运行时的功能。 Docker提供了一个名为的非常好的功能,用于定义和运行多容器Docker应用程序。 现在的问题是,有没有办法在GAE中使用docker compose的功能?如果答案是否定的,那么部署多容器应用程序(例如Nginx PHP-FPM RabbitMQ Elasticsearch Redis M

  • 我想制作一个易于运行的 jupyter 笔记本,它支持 OpenCV,并作为 Docker 映像提供。 这个概念是让一个 docker 容器运行 jupyter 内核,并通过主机中的浏览器访问笔记本。类似的东西。 但是,问题是OpenCV似乎依赖于正在运行的Gtkenvironment.So尝试运行以下代码: 导致jupyter内核崩溃: 有没有办法绕过这种依赖关系,让在泊坞站容器中运行的Open

  • 编辑(2/19/21):自从几年前我提出这个原始问题以来,已经过去了很多时间,从那时起我看到了一系列的活动。我重新选择了一个答案,我认为它与解决这个问题的最本地化和最安全的选项一致(通常与docker compose相关)。虽然docker引入了命令,但这通常是一个危险的操作,我会谨慎使用,因为您可能会无意中影响机器上的其他应用程序或设置 我在使用Docker 1.9删除Docker卷时遇到问题。

  • 问题内容: 我用来运行一个测试环境,它由大约5个不同的容器组成。容器间链接和共享卷(从)开始工作非常好。我还向主机公开了一些端口,效果很好。 我所缺少的是在不对IP地址进行硬编码的情况下将一些真实服务器链接到此环境的方法。使用,您可以用来在文件中添加另一行。有什么办法可以与docker-compose做类似的事情吗? 问题答案: 我有个好消息:它将在Compose 1.3中发布! 我在当前的RC(