1. 程式人生 > >第一本Docker書-5.2 在Docker _Ubuntu容器中安裝Ruby出錯

第一本Docker書-5.2 在Docker _Ubuntu容器中安裝Ruby出錯

首先,
在書籍原始碼中:

[[email protected] sinatra]$ cat dockerbook-code/code/5/sinatra/webapp/Dockerfile
FROM ubuntu:16.04
LABEL maintainer="[email protected]"
ENV REFRESHED_AT 2014-06-01

RUN apt-get -qq update && apt-get -qq install ruby ruby-dev build-essential redis-tools
RUN gem install --no-rdoc --no-ri sinatra json redis

RUN mkdir
-p /opt/webapp EXPOSE 4567 CMD [ "/opt/webapp/bin/webapp" ]

Dockerfile 使用 apt-get 在安裝 ruby時預設安裝了 ruby 1.8.7,在安裝sinatra時就會報錯:

rack requires Ruby version >= 2.2.2.

於是,需要 重新安裝 高版本的 ruby;

通過下載原始碼進行安裝的 Dockerfile :

FROM ubuntu:14.04
MAINTAINER Aemonair "[email protected]"
ENV REFESHED_AT 20180929

# RUN alias /bin/sh /bin/bash
RUN apt-get -yqq update && apt-get -yqq install wget curl gnupg2 libcurl3 build-essential redis-tools RUN apt-get install -y --force-yes zlib1g-dev libssl-dev libreadline-dev libyaml-dev libxml2-dev libxslt-dev RUN cd /tmp RUN wget http://ftp.ruby-lang.org/pub/ruby/2.5/ruby-2.5.0.tar.gz RUN tar -xvzf ruby-2.5.0.tar.gz RUN cd
ruby-2.5.0/ && ./configure --prefix=/usr/local; make; make install RUN ruby -v RUN ln -s /usr/local/bin/ruby /usr/bin/ruby RUN gem install --no-rdoc --no-ri sinatra json redis RUN mkdir -p /opt/webapp EXPOSE 4567 CMD [ "/opt/webapp/bin/webapp" ]

通過下載了ruby2.5的原始碼 ./configure 、 make、 make install編譯安裝後,
不再報錯;

相關推薦

第一Docker-5.2Docker _Ubuntu容器安裝Ruby出錯

首先, 在書籍原始碼中: [[email protected] sinatra]$ cat dockerbook-code/code/5/sinatra/webapp/Dockerfile F

docker學習筆記-2.docker鏡像制作

比較 etc xitong image dock 大小 docker bubuko img docker鏡像制作 docker鏡像內核 從docker鏡像大小來說,一個比較小的鏡像只有十幾MB,而內核文件需要一百多兆。因此docker鏡像沒有內核。鏡像再被啟動為容器後將直接

【讀過的】程式設計小白的第一入門

程式設計小白的第一本入門書 在一個非常美麗的夜晚,無意間看到一本書,《程式設計小白的第一本入門書》 我也沒有購買紙質版的,就在網上找了一個.pdf版的看了看,雖然這些知識內容可能我都接觸過了,但是我還是很興奮,因為這本書並沒有和其他書籍各種專業名詞的描述Python基礎的各個技

docker筆記5-使用docker-compose build image像並啟動應用

使用docker-compose build image像並啟動應用 1.準備材料 website-1.0.0.jar Dockerfile docker-compose.yml Dockerfile FROM java:8-jre-alpine MAINTAINER [em

febootstrap自制Docker的7.2 Docker映象

1:安裝febootstrap yum -y install febootstrap 2:使用febootstrap下載製作映象所需檔案。 febootstrap -i bash -i wget -i yum -i iputils -i iproute -i vim -i httpd c

《我的第一C++》 用STL優雅你的程式 2018/10/8

STL = 演算法 +容器 + 迭代器 algorithm   container   iterator 容器介面卡(container adaptor)、函式物件(functor) STL的常用標頭檔案和名字空間 STL常用標頭檔案和名字空間 標頭檔案 

我的docker隨筆5docker-compose的安裝與使用

由前文知,執行容器的命令比較簡單,但是,當有複雜的應用時,比如設定環境變數、掛載目錄、對映埠,命令就變得比較長了。如果有多個docker映象同時配置使用的話,單獨執行docker run會顯示比較麻煩。因此,本文就介紹多容器編排的一個簡單工具:docker-co

docker紀錄篇2——docker使用maven遠端構建

一 。docker遠端服務  docker預設情況下 本機 使用 docker命令操作映象和容器  docker提供了 -H可以連線遠端的docker伺服器映象遠端映象 和

Docker學習筆記(2)--Docker常用命令

1. 檢視docker資訊(version、info) # 檢視docker版本 $docker version # 顯示docker系統的資訊 $docker info 2. 對image的操作(search、pull、images、rmi、history) # 檢

Docker基礎修煉2--Docker映象原理及常用命令

通過前文的講解對Docker有了基本認識之後,我們開始進入實戰操作,本文先演示Docker三要素之映象原理和相關命令。 本文的演示環境仍然沿用上一篇文章在本地Centos7中安裝的環境,如果你本地沒有搭建Docker環境,也可以直接使用前文提到的Docker練習場(play-with-docker)線上進行練

TortoiseSVN 1.9.5安裝 與 Eclipse4.4.2及以上版本安裝SVN插件

new port 作用 nbsp fin 1.8 detail net .net 引自: http://blog.csdn.net/chenchunlin526/article/details/54631458 TortoiseSVN 1.9.5安裝 與 Eclipse4

docker容器安裝vim

docker容器中安裝vim在使用docker容器時,有時候裏邊沒有安裝vim,敲vim命令時提示說:vim: command not found,這個時候就需要安裝vim,可是當你敲apt-get install vim命令時,提示: Reading package lists... Done

linux docker容器安裝maven nexus倉庫

1.docker安裝,參考上一篇rancher2.0搭建簡單的k8s叢集 2.建立資料夾:/usr/local/work/maven 3.執行docker,拉取nexus映象。 docker search nexus; #拉取nexus映象 docker pull sonatyp

Spark1.5.2 on Hadoop2.4.0 安裝配置

一、           前言  本文簡單介紹yarn安裝,主要介紹spark1.5.2on yarn模式安裝,僅供參考。   二、  

解決:bash: vim: command not found、docker 容器不識別 vi / vim 、docker 容器安裝 vim

1. 在 Docker 容器中編輯檔案,報錯如下: bash: vim: command not found 2.  安裝 vim : apt-get install vim  執行完成後報錯: Reading package lists... D

docker容器安裝vim

docker容器中安裝vim 在使用docker容器時,有時候裡邊沒有安裝vim,敲vim命令時提示說:vim: command not found,這個時候就需要安裝vim,可是當你敲apt-get install vim命令時,提示: Reading pac

Docker建立映象檔案並在容器執行

1.如何建立映象檔案 首先找到Docker ToolBox安裝的路徑,在路徑下直接新建Dockerfile檔案 在Dockerfile檔案裡寫入的內容為: FROM docker/whalesay:latest RUN apt-get -y update && apt-get inst

linux docker容器安裝maven nexus倉庫

2.建立資料夾:/usr/local/work/maven 3.執行docker,拉取nexus映象。 docker search nexus; #拉取nexus映象 docker pull sonatype/nexus; #執行 docker run -i

特定docker容器安裝jdk 1.8

前言:由於一些通過docker-compse安裝的特定的docker 容器中沒有安裝vim或者jdk。 通過以下步驟來安裝和使用指定版本的jdk 1.在宿主系統下載所需要的jdk版本的gz檔案 2.複製gz檔案到容器中的root的使用者目錄下 docker cp