https://github.com/adamvduke/docker-ruby-build
build ruby debs in a docker container
https://github.com/adamvduke/docker-ruby-build
deb docker ruby ubuntu
Last synced: 3 months ago
JSON representation
build ruby debs in a docker container
- Host: GitHub
- URL: https://github.com/adamvduke/docker-ruby-build
- Owner: adamvduke
- License: mit
- Created: 2016-01-09T06:10:38.000Z (over 10 years ago)
- Default Branch: master
- Last Pushed: 2016-11-18T00:25:02.000Z (over 9 years ago)
- Last Synced: 2025-01-15T13:20:05.673Z (over 1 year ago)
- Topics: deb, docker, ruby, ubuntu
- Language: Shell
- Homepage:
- Size: 7.81 KB
- Stars: 1
- Watchers: 1
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
build ruby debs in a docker container
1. Make sure to update build.sh to add/remove the correct `--conflicts` and `--replaces` lines.
1. Set the `RUBY_PKG_ITERATION` and `RUBY_PKG_MAINTAINER` environment variables for your build.
1. Build the container(s) for the ubuntu release you want the ruby package to be build on.
```
# build the containers
docker build -t adamvduke/docker-ruby-build:precise -f Dockerfile.precise .
docker build -t adamvduke/docker-ruby-build:trusty -f Dockerfile.trusty .
# build the default 2.3.0 ruby and output the debs
docker run -it --rm -v /path/to/host/output/directory:/tmp/ruby-build/dist adamvduke/docker-ruby-build:precise
docker run -it --rm -v /path/to/host/output/directory:/tmp/ruby-build/dist adamvduke/docker-ruby-build:trusty
# override the environment variables to build ruby 2.2.2 and outut the debs
docker run -it --rm -v /path/to/host/output/directory:/tmp/ruby-build/dist \
-e "RUBY_PKG_VERSION=2.2" \
-e "RUBY_VERSION=2.2.2" \
adamvduke/docker-ruby-build:precise
docker run -it --rm -v /path/to/host/output/directory:/tmp/ruby-build/dist \
-e "RUBY_PKG_VERSION=2.2" \
-e "RUBY_VERSION=2.2.2" \
adamvduke/docker-ruby-build:trusty
# use dpkg --info to inspect the package that you built and make sure it looks correct
docker run -it --rm -v ~/tmp/precise/dist:/tmp/ruby-build/dist adamvduke/docker-ruby-build:precise bash
root@4ca002d5435b:/# dpkg --info /tmp/ruby-build/dist/ruby2.3_2.3.0-2_amd64.deb
new debian package, version 2.0.
size 32744464 bytes: control archive= 36418 bytes.
559 bytes, 15 lines control
106372 bytes, 1244 lines md5sums
Package: ruby2.3
Version: 2.3.0-2
License: 2-clause BSDL
Vendor: ruby
Architecture: amd64
Maintainer: adamduke@twitter.com
Installed-Size: 114330
Depends: libc6 (>= 2.6), libffi6 (>= 3.0.10), libgdbm3 (>= 1.8.3), libncurses5 (>= 5.7), libreadline6 (>= 6.1), libssl1.0.0 (>= 1.0.0), libstdc++6 (>= 4.4.3), libyaml-0-2 (>= 0.1.3), zlib1g (>= 1:1.2.2)
Conflicts: ruby1.9.1, ruby1.9.3, ruby2.1
Provides: ruby, ruby-interpreter
Replaces: ruby1.9.1, ruby1.9.3, ruby2.1
Section: default
Priority: extra
Homepage: https://ruby-lang.org
Description: Ruby 2.3.0 stable
docker run -it --rm -v ~/tmp/trusty/dist:/tmp/ruby-build/dist adamvduke/docker-ruby-build:trusty bash
root@74d487e05ac5:/# dpkg --info /tmp/ruby-build/dist/ruby2.3_2.3.0-2_amd64.deb
new debian package, version 2.0.
size 30693586 bytes: control archive=36422 bytes.
559 bytes, 15 lines control
106372 bytes, 1244 lines md5sums
Package: ruby2.3
Version: 2.3.0-2
License: 2-clause BSDL
Vendor: ruby
Architecture: amd64
Maintainer: adamduke@twitter.com
Installed-Size: 102406
Depends: libc6 (>= 2.6), libffi6 (>= 3.0.10), libgdbm3 (>= 1.8.3), libncurses5 (>= 5.7), libreadline6 (>= 6.1), libssl1.0.0 (>= 1.0.0), libstdc++6 (>= 4.4.3), libyaml-0-2 (>= 0.1.3), zlib1g (>= 1:1.2.2)
Conflicts: ruby1.9.1, ruby1.9.3, ruby2.1
Provides: ruby, ruby-interpreter
Replaces: ruby1.9.1, ruby1.9.3, ruby2.1
Section: default
Priority: extra
Homepage: https://ruby-lang.org
Description: Ruby 2.3.0 stable
```