Gem::Ext::BuildError: 오류: gem 기본 확장을 빌드할 수 없습니다.

Gem::Ext::BuildError: 오류: gem 기본 확장을 빌드할 수 없습니다.

다음 Dockerfile이 있습니다.

FROM debian:stretch-backports
RUN apt-get update  && apt-get install -y --no-install-recommends \
        build-essential \
        ruby ruby-dev \
        curl wget \
        gnupg \
        git \
        ncbi-blast+ zlib1g-dev

RUN curl -sL https://deb.nodesource.com/setup_8.x | bash - && \
        apt-get update  && apt-get install -y --no-install-recommends \
        nodejs && \
        rm -rf /var/lib/apt/lists/*

RUN gem install bundler && \
    wget -c https://github.com/wurmlab/sequenceserver/archive/1.1.0.beta12.tar.gz  && \
    tar xfvz 1.1.0.beta12.tar.gz && \
    cd sequenceserver-1.1.0.beta12 && \
    npm install && \
    bundle instal

이로 인해 다음 오류가 발생했습니다.

...
Installing childprocess 1.0.1 with native extensions
Gem::Ext::BuildError: ERROR: Failed to build gem native extension.

    current directory: /var/lib/gems/2.3.0/gems/childprocess-1.0.1/ext
/usr/bin/ruby2.3 mkrf_conf.rb

current directory: /var/lib/gems/2.3.0/gems/childprocess-1.0.1/ext
/usr/bin/ruby2.3 -rubygems
/usr/share/rubygems-integration/all/gems/rake-10.5.0/bin/rake
RUBYARCHDIR=/var/lib/gems/2.3.0/extensions/x86_64-linux/2.3.0/childprocess-1.0.1
RUBYLIBDIR=/var/lib/gems/2.3.0/extensions/x86_64-linux/2.3.0/childprocess-1.0.1
/usr/bin/ruby2.3: No such file or directory --
/usr/share/rubygems-integration/all/gems/rake-10.5.0/bin/rake (LoadError)

rake failed, exit code 1

Gem files will remain installed in /var/lib/gems/2.3.0/gems/childprocess-1.0.1
for inspection.
Results logged to
/var/lib/gems/2.3.0/extensions/x86_64-linux/2.3.0/childprocess-1.0.1/gem_make.out

An error occurred while installing childprocess (1.0.1), and Bundler cannot
continue.
Make sure that `gem install childprocess -v '1.0.1' --source
'http://rubygems.org/'` succeeds before bundling.

In Gemfile:
  selenium-webdriver was resolved to 3.142.3, which depends on
    childprocess

내가 놓친 게 무엇입니까?

미리 감사드립니다

답변1

첫째, Dockerfile 끝에 오타가 있는데 복사해서 붙여넣은 것 같아요.

그런데 레이크를 먼저 설치해서 구축해봤습니다. 따라서 마지막 Docker 명령은 다음과 같아야 합니다.

RUN gem install bundler && \
    gem install rake && \
    wget -c https://github.com/wurmlab/sequenceserver/archive/1.1.0.beta12.tar.gz  && \
    tar xfvz 1.1.0.beta12.tar.gz && \
    cd sequenceserver-1.1.0.beta12 && \
    npm install && \
    bundle install

관련 정보