Skip to content
Fred Schoeneman edited this page Oct 22, 2021 · 7 revisions

#RoRo: Roll on, Roll off

The intermodal shipping containers support a larger business just as software containers support a larger project. We might roll a shipping container onto a truck, then off and onto a train, then off and onto one those big Maersk container ships, just as one of your team might roll a software container off her development machine and onto source control like Github or Bitbucket, then off and onto onto a continuous integration service like CircleCI or Semaphor, then off and onto an image repository like Docker Hub or Amazon ECR, then off and onto a kubernetes cluster on a production server maintained by Microsoft, Google, Oracle or Digial Ocean.

RoRo is a framework and set of conventions for rolling your software project on and off of different environments. Our goal is to make it less painful. We do this in two ways. The first is by giving you access to developer stories and tutorials you can use and then take from what you like. The second is by giving you a way to write your own developer stories and share them with your team, your students, your organization or the developer world writ large.

Prerequisites

Docker and Docker Compose

You'll need Docker and Docker Compose. To confirm Docker is installed:

$ docker -v
Docker  20.10.9, build c2ea9bc
$ docker-compose -v
docker-compose version 1.21.0, build 5920eb0

Ruby

Many popular operating systems come with some flavor of ruby installed.

$ ruby -v
ruby 2.5.8p224 (2020-03-31 revision 67882) [x86_64-linux]

Any ruby version newer than 2.5 should be fine.

install or upgrade

Install

$ gem install roro

Rollon

$ roro rollon

Contributing

If you have ideas on how to make it better please put in an issue -- or fork the repo, make your changes, write your tests, and send me a pull request. It'll make me feel warm inside.

License

The gem is available as open source under the terms of the MIT License.