Advertisements
RSS

Tag Archives: Docker

Free ebook, DevOps with OpenShift

When getting started with OpenShift the concepts op Docker, Kubernetes and additional OpenShift toolset can be overwhelming from both the development and infrastructure background perspective. Luckily three OpenShift experts at Red Hat explain in the book “DevOps with OpenShift” how to configure Docker application containers and the Kubernetes cluster manager with OpenShift’s tools.

The book covers (and I quote):

Discover how this infrastructure-agnostic container management platform can help companies navigate the murky area where infrastructure-as-code ends and application automation begins.

  • Get an application-centric view of automation—and understand why it’s important
  • Learn patterns and practical examples for managing continuous deployments such as rolling, A/B, blue-green, and canary
  • Implement continuous integration pipelines with OpenShift’s Jenkins capability
  • Explore mechanisms for separating and managing configuration from static runtime software
  • Learn how to use and customize OpenShift’s source-to-image capability
  • Delve into management and operational considerations when working with OpenShift-based application workloads
  • Install a self-contained local version of the OpenShift environment on your computer

Red Hat offers the eBook for free on their website as a promotion for download here. It’s a great tutorial and sort of a must-read for everyone starting with OpenShift.

 

 

 

 

Advertisements
 
Leave a comment

Posted by on 23-08-2017 in Uncategorized

 

Tags: , ,

How to install and run OpenShift Origin on your Mac OS X ?

Installing OpenShift Origin on OS X

The easiest way to install (many software) on your OS X machine is through Homebrew. So let’s try that! :)

brew update
brew install openshift-cli

Check the installation

jvzoggel$ oc version
oc v3.6.0+c4dd4cf
kubernetes v1.6.1+5115d708d7
features: Basic-Auth

Running

When running OpenShift on your Mac OS X host.

jvzoggel$ oc cluster up
-- Checking OpenShift client ... OK
-- Checking Docker client ... OK
-- Checking Docker version ...
WARNING: Cannot verify Docker version
-- Checking for existing OpenShift container ... OK
-- Checking for openshift/origin:v1.5.1 image ... OK
-- Checking Docker daemon configuration ... FAIL

Error: did not detect an --insecure-registry argument on the Docker daemon
Solution:
Ensure that the Docker daemon is running with the following argument: 
--insecure-registry 172.30.0.0/16
You can run this command with --create-machine to create a machine with the right argument.

We have to add the registry 172.30.0.0/16 to our Docker Daemon through preferences -> Daemon and select Apply & Restart.

Next when I tried to run the cluster I get this error:

jvzoggel$ oc cluster up
-- Checking OpenShift client ... OK
-- Checking Docker client ... OK
-- Checking Docker version ... 
   WARNING: Cannot verify Docker version
-- Checking for existing OpenShift container ... OK
-- Checking for openshift/origin:v1.5.1 image ... OK
-- Checking Docker daemon configuration ... OK
-- Checking for available ports ... OK
-- Checking type of volume mount ... 
   Using Docker shared volumes for OpenShift volumes
-- Creating host directories ... OK
-- Finding server IP ... 
   Using 127.0.0.1 as the server IP
-- Starting OpenShift container ... FAIL
   Error: exec: "socat": executable file not found in $PATH

The error is what misleading because socat is a dependency (check here) in the homebrew openshiftcli and therefor should be installed automatically through the brew command. The real reason seems the Docker Toolbox on OSx requires us to add an additional parameter when starting or stopping our OpenShift cluster.

oc cluster up --docker-machine=openshift
oc cluster down --docker-machine=openshift

Voila! Hope it helps

References

 
Leave a comment

Posted by on 21-08-2017 in Uncategorized

 

Tags: , , ,

Cleaning up your old excess Docker containers

Every docker run command creates a container on your system. When you exit the container (and it is no longer running) it is still there on disk and can be seen with

docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
ea520a35da1f jvzoggel/kafka "/bin/bash" 2 minutes ago Exited (0) 2 minutes ago kafka1
46067fe01dc4 jvzoggel/kafka "/bin/bash" 3 minutes ago Exited (0) 2 minutes ago kafka2
0b7bcb382e65 jvzoggel/kafka "/bin/bash" 3 minutes ago Exited (0) 3 minutes ago kafka3

The containers that are not running will not consume any system resources except disk space, but it is usually good to clean up after yourself so ..

Automatically clean-up after yourself

The Docker documentation describes how to automatically clean up the container and remove the file system when the container exits:
   –rm=false: Automatically remove the container when it exits (incompatible with -d)
The above shows that by default containers are not removed, so by adding –rm=true or just the short-hand –rm will do the trick:

docker run -i -t --rm jvzoggel/kafka /bin/bash

When you exit from the container it will be automatically removed from disc.

Manually clean-up your stuff

Another method (all credits: Guillaume J. Charmes) is the command:

docker rm `docker ps --no-trunc -aq`

which will remove all containers in a elegant way

 

 
Leave a comment

Posted by on 05-08-2016 in Uncategorized

 

Tags: