Early Access Program

What Does IntelliJ IDEA 2020.1 Have in Store for Docker and Kubernetes?

IntelliJ IDEA 2020.1 comes fully packed with features and improvements! Today, let’s take a closer look at the enhanced support for Docker and Kubernetes.

Kubernetes support

Better cluster interaction

With the Kubernetes plugin, you can browse cluster objects and extract their configurations, view pod logs, and much more.

But what about cases when you have limited rights to the Kubernetes cluster? With this update, we’ve added the ability to browse clusters even when you have limited rights. If you have permission to access specific namespaces, the IDE will view only that limited information in the Services tool window. For the nodes you don’t have access to, the IDE will show you an error message.

One of the most notable features for Kubernetes in this upcoming version is that now you can update a Kubernetes cluster to match a state defined in your local files – right from the IDE. Simply invoke the “Apply” command from the editor gutter.

k8s2020

We’ve also added the ability to select from two Kustomize generations: 2.0.3 (which is embedded into kubectl starting with 1.14) and the latest standalone, 3.x. You can choose the version in File | Settings | Languages & Frameworks | Kubernetes. After you select the needed Kustomize version, the validation and other features will be available according to the chosen version.

Screenshot 2020-04-03 at 15.58.04

Speaking of Kustomize files, for version 3.x we now fully support inline patches and provide validation and completion for them.

k8sPatches

Screenshot 2020-04-03 at 13.51.46
It’s now possible to share configurations between projects. The external specification paths/URLs can be now stored either at the project level or at the IDE level. The needed scope can be selected in File | Settings | Languages & Frameworks | Kubernetes.

The IDE now provides completion, validation, and navigation for images from the Docker hub in Kubernetes resource files.

Also, the plugin now supports Kubernetes API 1.18.

Please bear in mind that you need to install the Kubernetes plugin to enable Kubernetes support in the IDE. Also, Kubernetes support is available only in IntelliJ IDEA Ultimate.

Which feature do you want to see implemented next? Let us know! We are currently actively working on enhancing Kubernetes support. Your feedback can have a significant influence on the roadmap for Kubernetes support.

Improvements in Docker integration

In IntelliJ IDEA 2020.1, we’ve made a lot of changes to the Docker integration. Let’s take a closer look at those changes, both big and small.

To help you more easily pull images from a Docker registry, we’ve reworked our UI and removed the modal dialog. Now, you can simply click the Images node in the left-hand pane of the Service tool window, and IntelliJ IDEA will open the Images Console tab, from which you can easily pull images. The IDE also provides completion for images.

DockerPull

Also, now you can inspect the image of the running Docker container.

DockerInspectImagw

Last but not least, IntelliJ IDEA now supports the modern Docker syntax for device requests via the standard –gpus command-line option. We’ve added support for several requested command-line options as well, but if you are still missing some Docker run options, please add a comment to this issue.

We hope you find this new functionality awesome. Give the new features a try by downloading IntelliJ IDEA 2020.1!

Share your feedback with us here in the comments, in our issue tracker, or on Twitter.

Happy Developing!

image description