dockerのruby2.3.1を2.3.7に変更する
Dockerfile
変更後
FROM ruby:2.3.7
RUN apt-get update -qq && apt-get install -y apt-utils build-essential libpq-dev nodejs qt4-dev-tools libqt4-dev libqtcore4 libqtgui4 libqtwebkit-dev libqtwebkit4
RUN mkdir -p /var
WORKDIR /var
ENV BUNDLE_JOBS=4
COPY Gemfile Gemfile
COPY Gemfile.lock Gemfile.lock
RUN bundle install
変更前
FROM ruby:2.3.1
RUN apt-get update -qq && apt-get install -y apt-utils build-essential libpq-dev nodejs qt4-dev-tools libqt4-dev libqt4-core libqt4-gui
RUN mkdir -p /var
WORKDIR /var
ENV BUNDLE_JOBS=4
COPY Gemfile Gemfile
COPY Gemfile.lock Gemfile.lock
RUN bundle install
2.3.7に変更
FROM ruby:2.3.1
をFROM ruby:2.3.7
へ
Step 1/9 : FROM ruby:2.3.7
---> 77ff091434b0
Step 2/9 : RUN apt-get update -qq && apt-get install -y apt-utils build-essential libpq-dev nodejs qt4-dev-tools libqt4-dev libqt4-core libqt4-gui
---> Running in bb58849fe0c4
Reading package lists...
Building dependency tree...
Reading state information...
E: Unable to locate package libqt4-core
E: Unable to locate package libqt4-gui
apt-getでインストールするモジュールを変更
RUN apt-get ... libqt4-core libqt4-gui
をRUN apt-get ... libqtcore4 libqtgui4
へ
$ docker-compose build rails
Building rails
Step 1/9 : FROM ruby:2.3.7
---> 77ff091434b0
Step 2/9 : RUN apt-get update -qq && apt-get install -y apt-utils build-essential libpq-dev nodejs qt4-dev-tools libqt4-dev libqtcore4 libqtgui4
---> Using cache
---> 8e698bfdb416
Step 3/9 : RUN mkdir -p /var
---> Using cache
---> 6a5851d6602b
Step 4/9 : WORKDIR /var
---> Using cache
---> e30dc10c0946
Step 5/9 : ENV BUNDLE_JOBS=4
---> Using cache
---> a2265255a0f5
Step 6/9 : COPY Gemfile Gemfile
---> Using cache
---> ff5546a0baae
Step 7/9 : COPY Gemfile.lock Gemfile.lock
---> 1dae9fff602e
Step 8/9 : RUN bundle update
---> Running in 07461c94f948
Fetching gem metadata from https://rubygems.org/.......
Fetching gem metadata from https://rubygems.org/.
Resolving dependencies..............
Fetching rake 12.3.1 (was 11.2.2)
Fetching concurrent-ruby 1.0.5 (was 1.0.2)
.
.
.
Fetching meta-tags 2.10.0 (was 2.1.0)
Fetching kaminari 1.1.1 (was 0.17.0)
Installing kaminari 1.1.1 (was 0.17.0)
Installing meta-tags 2.10.0 (was 2.1.0)
Gem::Ext::BuildError: ERROR: Failed to build gem native extension.
current directory: /usr/local/bundle/gems/capybara-webkit-1.15.0
/usr/local/bin/ruby -r ./siteconf20180724-7-1k7d1f0.rb extconf.rb
cd src/ && /usr/lib/x86_64-linux-gnu/qt4/bin/qmake
/usr/local/bundle/gems/capybara-webkit-1.15.0/src/webkit_server.pro -o
Makefile.webkit_server
cd src/ && make -f Makefile.webkit_server
make[1]: Entering directory '/usr/local/bundle/gems/capybara-webkit-1.15.0/src'
.
.
.
stable.h:23:23: fatal error: QWebElement: No such file or directory
#include <QWebElement>
^
compilation terminated.
Makefile.webkit_server:505: recipe for target 'build/webkit_server.gch/c++'
failed
make[1]: *** [build/webkit_server.gch/c++] Error 1
make[1]: *** Waiting for unfinished jobs....
make[1]: Leaving directory '/usr/local/bundle/gems/capybara-webkit-1.15.0/src'
Makefile:39: recipe for target 'sub-src-webkit_server-pro-make_default-ordered'
failed
make: *** [sub-src-webkit_server-pro-make_default-ordered] Error 2
Command 'make --jobs=4' failed
current directory: /usr/local/bundle/gems/capybara-webkit-1.15.0
make "DESTDIR=" clean
cd src/ && make -f Makefile.webkit_server clean
make[1]: Entering directory '/usr/local/bundle/gems/capybara-webkit-1.15.0/src'
rm -f build/moc_BlockUrl.cpp build/moc_AllowUrl.cpp
.
.
.
stable.h:23:23: fatal error: QWebElement: No such file or directory
#include <QWebElement>
^
compilation terminated.
Makefile.webkit_server:505: recipe for target 'build/webkit_server.gch/c++'
failed
make[1]: *** [build/webkit_server.gch/c++] Error 1
make[1]: Leaving directory '/usr/local/bundle/gems/capybara-webkit-1.15.0/src'
Makefile:39: recipe for target 'sub-src-webkit_server-pro-make_default-ordered'
failed
make: *** [sub-src-webkit_server-pro-make_default-ordered] Error 2
make failed, exit code 2
Gem files will remain installed in /usr/local/bundle/gems/capybara-webkit-1.15.0
for inspection.
Results logged to
/usr/local/bundle/extensions/x86_64-linux/2.3.0/capybara-webkit-1.15.0/gem_make.out
An error occurred while installing capybara-webkit (1.15.0), and Bundler cannot
continue.
Make sure that `gem install capybara-webkit -v '1.15.0' --source
'https://rubygems.org/'` succeeds before bundling.
In Gemfile:
capybara-webkit
ERROR: Service 'rails' failed to build: The command '/bin/sh -c bundle update' returned a non-zero code: 5
apt - Unable to locate package libqt4-core and libqt4-gui on Ubuntu 16 - Ask Ubuntu
apt-getでインストールするモジュールを追加
RUN apt-get ... libqtwebkit-dev libqtwebkit4
を追加