3

Ich versuche Ruby auf Docker zu installieren. Ich könnte die 1.9 Versionen installieren, aber es ist nicht möglich, die neueste Version wie 2.2.0 und höher zu installieren. Ich versuche tatsächlich, Kalebasse auf Docker einzurichten. Habe versucht this. Jedes Mal, wenn ich versuche, Calabash-Android zu installieren darin den FehlerWie installiert man Ruby auf Docker?

ERROR: Error installing calabash-android: 
luffa requires Ruby version >= 2.0. 

Antwort

5

bekommen könnten Sie starten sehen eine dockerfile beginnend mit:

FROM ruby:2.3.0 

dass die docker image ruby verwenden würde, mit Rubin bereits installiert.

+0

Dank @VonC für deine Hilfe. Kann ich Ruby manuell installieren, wenn ich im Container bin? –

+0

@muneermuhammed no: Sie würden die Installation von Ruby in einer Dockerdatei angeben, um ein Image mit installiertem Ruby zu erstellen, mit dem Sie dann einen Container ausführen können, in dem Ruby verfügbar ist. Sie installieren nichts direkt in einem Container. Plus, wenn Ihre Dockerfile mit FROM Ruby: 2.3.0 beginnt, müssen Sie Ruby überhaupt nicht installieren. Es ist bereits für Sie installiert. – VonC

+0

In Ordnung. Danke. –

2

Wenn Sie FROM eine andere Basis-Docker-Instanz starten, können Sie einfach RUN Befehle, die Ruby aus dem Paketverwaltungssystem der Basisinstanz installieren. Zum Beispiel this GitHub Gist zeigt, wie apt-get verwenden Ruby on eine Ubuntu-Instanz zu installieren:

# Pull base image. 
FROM dockerfile/ubuntu 

# Install Ruby. 
RUN \ 
    apt-get update && \ 
    apt-get install -y ruby 

Und this Gist zeigt eine Dockerfile, die auf einer Ubuntu-Instanz RVM und Ruby installieren konfiguriert sind:

FROM ubuntu 

RUN apt-get update 

# basics 
RUN apt-get install -y openssl 

# install RVM, Ruby, and Bundler 
RUN \curl -L https://get.rvm.io | bash -s stable 
RUN /bin/bash -l -c "rvm requirements" 
RUN /bin/bash -l -c "rvm install 2.0" 
RUN /bin/bash -l -c "gem install bundler --no-ri --no-rdoc"