-
Language:
English
-
Language:
English
Red Hat Training
A Red Hat training course is available for Red Hat Container Development Kit
Release Notes and Known Issues
Highlighted features and identified problems in Red Hat Container Development Kit 3.1
Chris Negus
cnegus@redhat.com
devtools-docs@redhat.com
Abstract
Chapter 1. Introducing Red Hat Container Development Kit
Red Hat Container Development Kit is a platform for developing containerized applications — it is a set of tools that enables developers to quickly and easily set up an environment for developing and testing containerized applications on the Red Hat Enterprise Linux platform.
- Container Development Kit provides a personal Container Development Environment you can install on your own laptop, desktop, or server system. The Container Development Environment is provided in the form of a Red Hat Enterprise Linux virtual machine. The Container Development Environment itself can also be installed in a virtual machine.
- Container Development Kit includes the same container-development and run-time tools used to create and deploy containers for large data centers.
- Container Development Kit offers an easy installation method based on the Minishift tool.
- Container Development Kit is available for Microsoft Windows, Mac OS X, and Linux operating systems, thus allowing developers to use their favorite platform while producing applications ready to be deployed in the Red Hat Enterprise Linux ecosystem.
Container Development Kit is a part of the Red Hat Developers program, which provides tools, resources, and support for developers who wish to utilize Red Hat solutions and products to create applications, both locally and in the cloud. For additional information and to register to become a part of the program, visit developers.redhat.com.
1.1. Understanding Container Development Kit Documentation
- The Red Hat Container Development Kit 3.1 Release Notes and Known Issues contains information about the current release of the product as well as a list of known problems that users may encounter when using it.
- The Container Development Kit Getting Started Guide contains instructions on how to install and start using the Container Development Environment to develop Red Hat Enterprise Linux-based containers using tools and services such as OpenShift Container Platform, Docker, Eclipse, and various command-line tools.
- Report issues with Red Hat Container Development Kit or request new features using the CDK project at https://issues.jboss.org/projects/CDK.
Chapter 2. Release Notes
This section documents the most important features and bug fixes in the Red Hat Container Development Kit 3.1 product.
2.1. Component Versions
Red Hat Container Development Kit 3.1 is shipped with the following versions of the main components:
Table 2.1. Container Development Kit, Component Versions
Component | Version |
---|---|
Docker | 1.12.6 |
Docker API | 1.24 |
Kubernetes | 1.6.1 |
OpenShift Container Platform | 3.6 |
2.2. VirtualBox Compatibility
Red Hat Container Development Kit 3.1 has been tested with VirtualBox 5.1.14 and higher, but it is known to not work correctly with VirtualBox 5.1.11 or older. If you intend to use VirtualBox as your virtualization provider, and you already have VirtualBox 5.1.11 or older installed, upgrade your installation to VirtualBox 5.1.12.
2.3. New Features
This section highlights some of the new features offered by Red Hat Container Development Kit 3.1. The new version also contains a number of bug fixes.
Red Hat Container Development Kit 3.1 is a new version of Container Development Kit, which has completely different components as compared to Container Development Kit 2.x. Red Hat Container Development Kit 3.1 contains the Minishift tool, a Red Hat Enterprise Linux 7 ISO, and the oc
binary for interacting with OpenShift Container Platform.
2.3.1. Minishift
Red Hat Container Development Kit 3.1 is based on Minishift, a command-line tool to provision OpenShift locally for application developers to develop application for OpenShift. It supports all native hypervisors and some additional ones:
- macOS
- xhyve (default)
- VirtualBox
- VMware Fusion
- Linux
- KVM (default)
- VirtualBox
- Windows
- Hyper-V (default)
- VirtualBox
2.3.2. Red Hat Container Development Kit 3.1 compared to Container Development Kit 2.x
Red Hat Container Development Kit 3.1:
- Is easier to install
- Has no dependancy on Vagrant
- Is only 400MB in size, which is 60% less than Container Development Kit 2.x
- Has fewer components to install — just a single binary
Red Hat Container Development Kit 3.1 offers improved user experience:
-
A single command-line tool,
minishift
, for interacting with the Container Development Environment - Shorter start time
2.3.3. Red Hat Container Development Kit 3.1 Highlights
New Features:
-
You can now set Container Development Kit to cache OpenShift images after the first
minishift start
. This allows subsequent starts to use container images from the local cache without going to Red Hat Registry to download those images again. To enable caching, runminishift config set image-caching true
. See Caching OpenShift Images for details. -
A new
apply
sub command has been added to theminishift addons
command to explicitly execute addons. See Using Minishift Add-ons, Apply for details. -
The
minishift start
andminishift addons apply
commands now support dynamic variables for applying the add-ons through the--addon-env
flag. Users can also set persistent configuration values for this (for example,minishift config set
). See Using Minishift Addons, Dynamic Variables for details.
Usability improvements:
-
Now you can just run
minishift start
to have that command interactively ask for username and password to register your Container Development Kit. If you provide the wrong username and password, you are allowed three attempts. -
The new
--skip-registration
flag forminishft start
skips registration at start time, while the new--skip-unregistration
flag forminishift stop
prevents Container Development Kit from being unregistered when it is stopped. -
The new
--follow
flag for theminishift logs
command lets you follow log messages for Container Development Kit as the come in. - New OpenJDK imagestream and templates have been added to Red Hat Container Development Kit 3.1. Developers can use the imagestream to develop Java microservices. See Add-on for openjdk imagestream and template.
Important bug fix:
- Several issues associated with Container Development Kit proxy environments have been fixed. See Proxy not set for Docker engine for details.
Chapter 3. Known Issues
This section describes issues that users of Red Hat Container Development Kit 3.1 may encounter, as well as possible workarounds for these issues.
3.1. General Issues
Issues affecting all supported platforms.
3.1.1. Cached images can be slow
Using cached images created by minishift start --image-caching
can sometimes be slower than downloading those images.
3.1.2. Metrics containers not deployed properly
The minishift start --metrics
command fails to properly deploy metrics container images due to a problem with version tags on these images. The workaround is to use --ocp-tag v3.6
. Despite using the same OCP version, this allows minishift start
to pull metrics images properly.
3.1.3. Logging containers not deployed properly
The minishift start --logging
command fails to properly deploy logging container images due to a problem with version tags on these images. The workaround is to use --ocp-tag v3.6
. Despite using the same OCP version, this allows minishift start
to pull logging images properly.
3.1.4. MINISHIFT_HOME
directory rewritten on every run of minishift setup-cdk
The directory set in the MINISHIFT_HOME
environment variable is rewritten whenever the minishift setup-cdk
command is executed. Do not set it to a directory that contains data that cannot be discarded, such as your home directory. The minishift
command displays a warning about the deletion of the directory.
3.1.5. Support for OpenShift v3.6 added
Support for --ocp-tag v3.6.0
was not originally available with Container Development Kit 3.1, so no version of OpenShift later than 3.5 could be used with CDK 3.1. For Container Development Kit 3.1.1, the default version of OpenShift is 3.6.173.0.5, so --ocp-tag
is not needed to get OpenShift v3.6.
3.1.6. The "latest" tag not supported with --ocp-tag
The --ocp-tag
flag for the minishift start
command does not support the "latest" tag. Workaround: If you want to use any OCP image other than the default, you need to find the version number of the specific image you want and select that version. You can find the image using --ocp-tag help
. The tag will be in the format: "v.X.Y.Z". Currently, no version later than the default 3.6.173.0.5 is available.
3.1.7. Typo in minishift openshift service
command
The minishift openshift service
outputs the word namsepace
instead of namespace
. This causes no functional problem.
3.1.8. Improper minishift ssh
error message
When you exit from minishift ssh
after executing a command that fails, Minishift will print an improper error message. Workaround: Ignore the error message, nothing bad happened. Here is an example:
~]$ minishift ssh Last login: Tue Apr 4 09:24:43 2017 from 192.168.42.1 ~]$ mistake -bash: mistake: command not found ~]$ exit logout E0404 09:31:11.723209 5180 ssh.go:38] Cannot establish SSH connection to the VM: exit status 127
3.1.9. Improper warning from minishift setup-cdk
command
On a fresh Container Development Kit 3.1.1 setup, when you execute minishift version
the .minishift
directory is created and default addons are automatically installed. After that, when you run the minishift setup-cdk
command, you are warned the .minishift
directory exists and that all data will be deleted, then asked if you want to continue. Workaround: Always type y
to continue. The addons will be properly installed.
3.1.10. Wrong URL in minishift start -h
output
Output from the minishift start -h
command improperly identifies the URL for finding available OpenShift tags as follows:
Check the available tags in https://access.redhat.com/containers/#/registry.access.redhat.com/openshift3/ose/images (default "v3.6.173.0.5")
The proper URL is:
https://access.redhat.com/containers/?tab=tags#/registry.access.redhat.com/openshift3/ose
3.2. Issues on Microsoft Windows
This section describes issues that only affect users using Container Development Kit on a Microsoft Windows host system.
3.2.1. The minishift openshift config set
command does not work as expected
Microsoft Windows CMD and PowerShell have problems with parsing JSON into minishift openshift config set
command. Special attention needed from user when using this command on Windows. The workaround is to use exact and verified example commands as mentioned on github.
C:\Users\CDK> minishift openshift config set --patch '{"corsAllowedOrigins": [".*"]}' The specified patch need to be valid JSON.
The workaround for Microsoft Windows CMD environments is to escape the quotes so that the JSON is correctly parsed:
C:\Users\CDK> minishift.exe openshift config set --patch "{\"routingConfig\": {\"subdomain\": \"192.168.99.101.nip.io\"}}"
For Powershell v2 environments on Microsoft Windows, the workaround is to use a variable to store the JSON code:
C:\Users\CDK\minishift> $json='{\"routingConfig\": {\"subdomain\": \"192.168.99.101.nip.io\"}}' C:\Users\CDK\minishift> echo $jason {\"routingConfig\": {\"subdomain\": \"192.168.99.101.nip.io\"}} C:\Users\CDK\minishift> minishift.exe openshift config set --patch $jason Patching OpenShift configuration /var/lib/origin/openshift.local.config/master/master-config.yaml with {"routingConfig": {"subdomain": "192.168.99.101.nip.io"}} Restarting OpenShift
3.2.2. Gow ssh utility causes error message in VM startup
Using the Gow (GNU on Windows) utility installer to install the SSH utility causes the following error message when SSH is invoked to start Container Development Kit virtual machine with VirtualBox on Windows 7:
0907 09:49:02.791900 3456 start.go:282] Error starting the VM: Error creating the VM. Error creating machine: Error in driver during machine creation: Too many retries waiting for SSH to be available. Last error: Maximum number of retries (60) exceeded. Retrying.
Despite this message, the VM started successfully.
Chapter 4. Additional Resources
- See the Container Development Kit Getting Started Guide for an overview of Container Development Kit features and for an introduction into the use of the Docker service and the OpenShift Container Platform platform.
- Report issues with Red Hat Container Development Kit or request new features using the CDK project at https://issues.jboss.org/projects/CDK.