Skip to content

Instantly share code, notes, and snippets.

@Cinderhaze
Created May 3, 2016 03:44
Show Gist options
  • Save Cinderhaze/6d0a9d2cbd3804218d5e25e4c08e4e48 to your computer and use it in GitHub Desktop.
Save Cinderhaze/6d0a9d2cbd3804218d5e25e4c08e4e48 to your computer and use it in GitHub Desktop.
Example
FROM ubuntu:15.10
RUN apt-get update && apt-get install -y \
build-essential \
git \
libxml2 libxml2-dev libxslt1-dev \
ruby2.2 \
ruby2.2-dev \
rubygems
RUN update-alternatives --install /usr/bin/ruby ruby /usr/bin/ruby2.2 500 --slave /usr/bin/ri ri /usr/bin/ri2.2 --slave /usr/bin/irb irb /usr/bin/irb2.2 --slave /usr/bin/gem gem /usr/bin/gem2.2
RUN mkdir /git && git clone https://github.com/jsok/puppet-vault /git/puppet-vault
#USER stuff here
WORKDIR /git/puppet-vault
RUN gem install bundler -v 1.12.1
ENV NOKOGIRI_USE_SYSTEM_LIBRARIES 1
RUN bundle config build.nokogiri '--use-system-libraries --with-xml2-include=/usr/include/libxml2'
root@7b854ec4d408:/git/puppet-vault# bundle install
Don't run Bundler as root. Bundler can ask for sudo if it is needed, and installing your bundle as root
will break this application for all non-root users on this machine.
Fetching https://github.com/rodjek/rspec-puppet.git
Fetching gem metadata from https://rubygems.org/
Fetching version metadata from https://rubygems.org/
Fetching dependency metadata from https://rubygems.org/
Resolving dependencies.........
Installing rake 11.1.2
Installing CFPropertyList 2.2.8
Installing addressable 2.4.0
Installing json 1.8.3 with native extensions
Installing mini_portile2 2.0.0
Installing backports 3.6.8
Installing require_all 1.3.3
Installing stringify-hash 0.0.2
Installing excon 0.49.0
Installing builder 3.2.2
Installing formatador 0.2.5
Installing multi_json 1.11.3
Installing ipaddress 0.8.3
Installing inflecto 0.0.2
Installing multipart-post 2.0.0
Installing jwt 1.5.4
Installing little-plugger 1.1.4
Installing memoist 0.14.0
Installing os 0.9.6
Installing httpclient 2.8.0
Installing hurley 0.2
Installing mime-types 2.99.1
Installing uber 0.0.15
Installing retriable 2.1.0
Installing thor 0.19.1
Installing hocon 0.9.5
Installing inifile 2.0.2
Installing minitest 5.8.4
Installing net-ssh 2.9.4
Installing open_uri_redirections 0.2.1
Installing trollop 2.1.2
Installing rsync 1.0.9
Installing unf_ext 0.0.7.2 with native extensions
Installing rspec-support 3.1.2
Installing diff-lcs 1.2.5
Installing net-telnet 0.1.1
Installing sfl 2.2
Installing coderay 1.1.1
Installing ffi 1.9.10 with native extensions
Installing facter 2.4.6
Installing net-http-persistent 2.9.4
Installing net-http-pipeline 1.0.1
Installing rb-fsevent 0.9.7
Installing ruby_dep 1.2.0
Installing lumberjack 1.0.10
Installing nenv 0.3.0
Installing shellany 0.0.1
Installing method_source 0.8.2
Installing slop 3.6.0
Installing json_pure 1.8.3
Installing highline 1.7.8
Installing stomp 1.3.5
Installing systemu 2.6.5
Installing metaclass 0.0.4
Installing spdx-licenses 1.1.0
Installing netrc 0.11.0
Installing puppet-lint 1.1.0
Installing websocket 1.2.3
Installing vagrant-wrapper 2.0.3
Using bundler 1.12.1
Installing puppet-syntax 2.1.0
Installing fission 0.5.0
Installing launchy 2.4.3
Installing jgrep 1.4.0
Installing travis-lint 2.0.0
Installing nokogiri 1.6.7.2 with native extensions
Installing beaker-answers 0.4.2
Installing beaker-hiera 0.1.1
Installing beaker-pe 0.1.2
Installing docker-api 1.28.0
Installing fog-core 1.38.0
Installing faraday 0.9.2
Installing logging 2.1.0
Installing representable 2.3.0
Installing net-scp 1.2.1
Installing unf 0.1.4
Installing rspec-core 3.1.7
Installing rspec-mocks 3.1.3
Installing rspec-expectations 3.1.2
Installing ethon 0.9.0
Installing rb-inotify 0.9.7
Installing notiffany 0.0.8
Installing pry 0.10.3
Installing hiera 1.3.4
Installing mcollective-client 2.8.4
Installing mocha 1.1.0
Installing metadata-json-lint 0.0.11
Installing pusher-client 0.6.2
Installing facterdb 0.3.5
Installing aws-sdk-v1 1.66.0
Installing rbvmomi 1.8.2
Installing fog-xml 0.1.2
Installing fog-json 1.0.2
Installing fog-local 0.3.0
Installing fog-vmfusion 0.1.0
Installing signet 0.7.2
Installing faraday_middleware 0.10.0
Installing gh 0.14.0
Installing specinfra 2.57.1
Installing domain_name 0.5.20160310
Installing rspec 3.1.0
Installing rspec-its 1.2.0
Installing typhoeus 0.8.0
Installing listen 3.1.2
Gem::InstallError: listen requires Ruby version >= 2.2.4, ~> 2.2.
Installing puppet 3.8.7
Installing aws-sdk 1.66.0
Installing fog-atmos 0.1.0
Installing fog-ecloud 0.3.0
Installing fog-profitbricks 0.0.5
Installing fog-terremark 0.1.0
Installing fog-voxel 0.1.0
Installing fog-aws 0.9.2
Installing fog-brightbox 0.10.1
Installing fog-dynect 0.0.3
Installing fog-google 0.0.9
Installing fog-powerdns 0.1.1
Installing fog-radosgw 0.0.5
Installing fog-riakcs 0.1.0
Installing fog-sakuracloud 1.7.5
Installing fog-serverlove 0.1.2
Installing fog-softlayer 1.1.0
Installing fog-storm_on_demand 0.1.1
Installing googleauth 0.5.1
Installing http-cookie 1.0.2
Using rspec-puppet 2.4.0 from https://github.com/rodjek/rspec-puppet.git (at master@79d5373)
Installing serverspec 2.33.0
Installing travis 1.8.2
An error occurred while installing listen (3.1.2), and Bundler cannot continue.
Make sure that `gem install listen -v '3.1.2'` succeeds before bundling.
@Cinderhaze
Copy link
Author

root@7b854ec4d408:/git/puppet-vault# ruby --version
ruby 2.2.3p173 (2015-08-18) [x86_64-linux-gnu]
root@7b854ec4d408:/git/puppet-vault# bundle exec ruby --version
ruby 2.2.3p173 (2015-08-18) [x86_64-linux-gnu]
root@7b854ec4d408:/git/puppet-vault#

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment