Five OpenShift Development Environments in Five Minutes
It’s been over a month since I spoke at the Red Hat Summit in Boston and now that the dust has settled, I thought you might be interested in reading a brief summary of my Lightning Talk on Five OpenShift Development Environments in Five Minutes.
In the presentation, I spoke about five different ways that you can create an OpenShift development environment within minutes. This included oc cluster up, Vagrant All in One Box, Minishift, a Fabric8 technology, and the Red Hat Development Suite. My goal through the presentation was to get developers up and working with OpenShift very quickly.
oc cluster up
This is included in OpenShift Origin 3.3+ and Red Hat OpenShift Container Platform 3.3+, which allows you to create an OpenShift Container Platform environment in a containerized environment. It’s actually creating a containerized platform in a container. It has a lot of flexibility and runs on Windows, Linux, and macOS.
This is the only option that we have here that allows you to use both Origin, which is the upstream version of OpenShift, and the Red Hat Enterprise version as well. It’s very simple, and all you really need to run this is Docker and the OpenShift client tool (oc). If you have those installed, it’s a simple oc cluster up command and you have an environment ready to start running.
$ oc cluster up --use-existing-config \
Vagrant All-in-One Box
This is a virtual machine, created by the OpenShift community using Vagrant. Vagrant’s a tool for building and managing VMs. This was a very well received project and it’s one of the initial projects to be able to create these development environments for OpenShift. It’s still very valid method if you have a Vagrant environment. However, the community is now shifting, pun intended, to Minishift, which we’ll talk about next.
If a user really wants to use Vagrant, this is still a valid method. It has to be understood that this specific Vagrant box is going to stay at version 3.3. It’s not going to be upgraded, but there are other Vagrant boxes available.
$ vagrant init openshift/origin-all-in-one
$ vagrant up --provider=virtualbox
This is gaining a lot of traction and where the community is heading. It doesn’t matter if you’re Windows, Linux, or Mac. This tool runs OpenShift locally using a single node OpenShift cluster in a virtual machine using a driver, such as virtualbox, kvm, xhyve, or Hyper-V, unlike oc cluster up, which uses a container. Many people found value with Minishift, as it provides parameters for customizing settings such as disk size, cpu, and memory.
$ minishift start --cpus=2 --disk-size=20g --memory=2048
Fabric8 Maven Plugin
This is an open source microservices platform, utilizing Docker, Jenkins, and OpenShift, Kubernetes. In fact, through this microservice type of framework, you can create your own OpenShift environment easily. I was specifically calling out this Maven Plugin, mostly because I wanted to show that it’s easy to spin up OpenShift inside a Maven project. In turn, this calls Minishift behind the scenes. You get all the functionality of Minishift within your Maven environment as well.
$ mvn fabric8:cluster-start -Dfabric8.cluster.kind=openshift
Red Hat Development Suite
The Red Hat Development Suite is a product available through the Red Hat Developer subscription, which is free for developers and is currently only available for Windows and Macintosh. I spoke of the RH Development Suite as it had an extremely easy installer, which allows you to pick all the components that you don’t have installed in your system and configures everything for you. Within minutes, you have your VirtualBox, your Vagrants, and your Red Hat Container Development Kit, all installed and ready for you to start using it as an OpenShift environment.
If you’re using Linux, you can still get the same functionality by using the Red Hat Container Development Kit, you just don’t get the installer.
I concluded my talk with a demo of my favorite option, oc cluster up, which required little upfront preparation, runs in a containerized environment and allows the usage of OpenShift Container Platform.
Take advantage of your Red Hat Developers membership and download RHEL today at no cost.