Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Rails & docker - can't install json gem

I tried to use panamax-ui (a RoR application) on docker. I worked on it couples of days (local and docker), modified it with success etc.

Then I've added some new fonctionnalities and some gems.

I've bundle install everything.

Then I wanted to re-build my docker (docker build)

but I've go this error :

Gem::Ext::BuildError: ERROR: Failed to build gem native extension.

/usr/bin/ruby extconf.rb creating Makefile

make "DESTDIR=" clean sh: make: not found

make "DESTDIR=" sh: make: not found

make failed, exit code 127

Gem files will remain installed in /usr/lib/ruby/gems/2.1.0/gems/json-1.8.3 for inspection. Results logged to /usr/lib/ruby/gems/2.1.0/extensions/x86_64-linux/2.1.0/json-1.8.3/gem_make.out An error occurred while installing json (1.8.3), and Bundler cannot continue. Make sure that gem install json -v '1.8.3' succeeds before bundling. The command '/bin/sh -c bundle install --without development test' returned a non-zero code: 5

I tried to remove the Gemfile.lock and re-run bundle install then rebuild the docker, same error...

this is my Gemfile :

source 'https://rubygems.org'

gem 'rails', '4.1.7'
gem 'puma', '2.8.2'
gem 'sqlite3', '1.3.9'
gem 'faraday_middleware', '0.9.0'
gem 'docker-api', '1.13.0', require: 'docker'
gem 'fleet-api', '1.1.0', require: 'fleet'
gem 'active_model_serializers', '0.9.0'
gem 'octokit', '3.2.0'
gem 'kmts', '2.0.1'
gem 'devise'
gem "devise_ldap_authenticatable"
gem 'json', '1.8.3'


group :test, :development do
  gem 'rspec-rails'
  gem 'its'
end

group :test do
  gem 'coveralls', '0.7.0'
  gem 'shoulda-matchers', '2.6.1'
  gem 'database_cleaner', '1.3.0'
  gem 'webmock', '1.20.0'
end

and my Gemfile.lock

    GEM
  remote: https://rubygems.org/
  specs:
    actionmailer (4.1.7)
      actionpack (= 4.1.7)
      actionview (= 4.1.7)
      mail (~> 2.5, >= 2.5.4)
    actionpack (4.1.7)
      actionview (= 4.1.7)
      activesupport (= 4.1.7)
      rack (~> 1.5.2)
      rack-test (~> 0.6.2)
    actionview (4.1.7)
      activesupport (= 4.1.7)
      builder (~> 3.1)
      erubis (~> 2.7.0)
    active_model_serializers (0.9.0)
      activemodel (>= 3.2)
    activemodel (4.1.7)
      activesupport (= 4.1.7)
      builder (~> 3.1)
    activerecord (4.1.7)
      activemodel (= 4.1.7)
      activesupport (= 4.1.7)
      arel (~> 5.0.0)
    activesupport (4.1.7)
      i18n (~> 0.6, >= 0.6.9)
      json (~> 1.7, >= 1.7.7)
      minitest (~> 5.1)
      thread_safe (~> 0.1)
      tzinfo (~> 1.1)
    addressable (2.3.8)
    archive-tar-minitar (0.5.2)
    arel (5.0.1.20140414130214)
    bcrypt (3.1.11)
    builder (3.2.2)
    concurrent-ruby (1.0.2)
    coveralls (0.7.0)
      multi_json (~> 1.3)
      rest-client
      simplecov (>= 0.7)
      term-ansicolor
      thor
    crack (0.4.3)
      safe_yaml (~> 1.0.0)
    database_cleaner (1.3.0)
    devise (4.2.0)
      bcrypt (~> 3.0)
      orm_adapter (~> 0.1)
      railties (>= 4.1.0, < 5.1)
      responders
      warden (~> 1.2.3)
    devise_ldap_authenticatable (0.8.5)
      devise (>= 3.4.1)
      net-ldap (>= 0.6.0, <= 0.11)
    diff-lcs (1.2.5)
    docile (1.1.5)
    docker-api (1.13.0)
      archive-tar-minitar
      excon (>= 0.37.0)
      json
    domain_name (0.5.20160615)
      unf (>= 0.0.5, < 1.0.0)
    erubis (2.7.0)
    excon (0.50.1)
    faraday (0.8.11)
      multipart-post (~> 1.2.0)
    faraday_middleware (0.9.0)
      faraday (>= 0.7.4, < 0.9)
    fleet-api (1.1.0)
      excon (>= 0.27.4)
    http-cookie (1.0.2)
      domain_name (~> 0.5)
    i18n (0.7.0)
    its (0.2.0)
      rspec-core
    json (1.8.3)
    kmts (2.0.1)
    mail (2.6.4)
      mime-types (>= 1.16, < 4)
    mime-types (3.1)
      mime-types-data (~> 3.2015)
    mime-types-data (3.2016.0521)
    minitest (5.9.0)
    multi_json (1.12.1)
    multipart-post (1.2.0)
    net-ldap (0.11)
    netrc (0.11.0)
    octokit (3.2.0)
      sawyer (~> 0.5.3)
    orm_adapter (0.5.0)
    puma (2.8.2)
      rack (>= 1.1, < 2.0)
    rack (1.5.5)
    rack-test (0.6.3)
      rack (>= 1.0)
    rails (4.1.7)
      actionmailer (= 4.1.7)
      actionpack (= 4.1.7)
      actionview (= 4.1.7)
      activemodel (= 4.1.7)
      activerecord (= 4.1.7)
      activesupport (= 4.1.7)
      bundler (>= 1.3.0, < 2.0)
      railties (= 4.1.7)
      sprockets-rails (~> 2.0)
    railties (4.1.7)
      actionpack (= 4.1.7)
      activesupport (= 4.1.7)
      rake (>= 0.8.7)
      thor (>= 0.18.1, < 2.0)
    rake (11.2.2)
    responders (1.1.2)
      railties (>= 3.2, < 4.2)
    rest-client (2.0.0)
      http-cookie (>= 1.0.2, < 2.0)
      mime-types (>= 1.16, < 4.0)
      netrc (~> 0.8)
    rspec-core (3.5.1)
      rspec-support (~> 3.5.0)
    rspec-expectations (3.5.0)
      diff-lcs (>= 1.2.0, < 2.0)
      rspec-support (~> 3.5.0)
    rspec-mocks (3.5.0)
      diff-lcs (>= 1.2.0, < 2.0)
      rspec-support (~> 3.5.0)
    rspec-rails (3.5.0)
      actionpack (>= 3.0)
      activesupport (>= 3.0)
      railties (>= 3.0)
      rspec-core (~> 3.5.0)
      rspec-expectations (~> 3.5.0)
      rspec-mocks (~> 3.5.0)
      rspec-support (~> 3.5.0)
    rspec-support (3.5.0)
    safe_yaml (1.0.4)
    sawyer (0.5.5)
      addressable (~> 2.3.5)
      faraday (~> 0.8, < 0.10)
    shoulda-matchers (2.6.1)
      activesupport (>= 3.0.0)
    simplecov (0.12.0)
      docile (~> 1.1.0)
      json (>= 1.8, < 3)
      simplecov-html (~> 0.10.0)
    simplecov-html (0.10.0)
    sprockets (3.6.3)
      concurrent-ruby (~> 1.0)
      rack (> 1, < 3)
    sprockets-rails (2.3.3)
      actionpack (>= 3.0)
      activesupport (>= 3.0)
      sprockets (>= 2.8, < 4.0)
    sqlite3 (1.3.9)
    term-ansicolor (1.3.2)
      tins (~> 1.0)
    thor (0.19.1)
    thread_safe (0.3.5)
    tins (1.10.2)
    tzinfo (1.2.2)
      thread_safe (~> 0.1)
    unf (0.1.4)
      unf_ext
    unf_ext (0.0.7.2)
    warden (1.2.6)
      rack (>= 1.0)
    webmock (1.20.0)
      addressable (>= 2.3.6)
      crack (>= 0.3.2)

PLATFORMS
  ruby

DEPENDENCIES
  active_model_serializers (= 0.9.0)
  coveralls (= 0.7.0)
  database_cleaner (= 1.3.0)
  devise
  devise_ldap_authenticatable
  docker-api (= 1.13.0)
  faraday_middleware (= 0.9.0)
  fleet-api (= 1.1.0)
  its
  json (= 1.8.3)
  kmts (= 2.0.1)
  octokit (= 3.2.0)
  puma (= 2.8.2)
  rails (= 4.1.7)
  rspec-rails
  shoulda-matchers (= 2.6.1)
  sqlite3 (= 1.3.9)
  webmock (= 1.20.0)

BUNDLED WITH
   1.12.5

Remember : The problem is when I do docker build

thanks for your help

like image 970
F4Ke Avatar asked Jul 07 '16 15:07

F4Ke


People also ask

Should I learn Rails or Django?

For example, if you want a highly detailed app loaded with remarkable features then you should go with Django. However, if you are thinking of a quick launch and then work on the details of the website or a web app then Ruby on Rails is your ideal bet.

What are Rails used for?

Rails is a development tool which gives web developers a framework, providing structure for all the code they write. The Rails framework helps developers to build websites and applications, because it abstracts and simplifies common repetitive tasks.

Is Rails a backend or frontend?

It does so by creating default structures for your code, your application's database and the web pages your application will serve up to the client. Seeing as Ruby on Rails runs on a web server and serves up information to client programs (web browsers), it's said to be a server-side or backend application.

Is Rails still relevant 2022?

Ruby's and Ruby on Rails' Overall Popularity Although way behind main contenders, such as PHP or Python, Ruby still makes the cut for the 20 most popular programming languages list in 2022. The 2022 edition of Stack Overflow Annual Developer Survey also places RoR in a similar spot.


1 Answers

As with any Ruby installation, you need dev tools to install gems with native extensions:

RUN apk update \
 && apk add --no-cache  \
    build-base  \
    ruby-dev
like image 62
Raphael Avatar answered Oct 14 '22 01:10

Raphael