Serdar Yegulalp
Senior Writer

Unikernel power comes to Java, Node.js, Go, and Python apps

news analysis
Jun 13, 20162 mins

Anyone who wants to experiment with deploying apps as self-contained miniature OSes now have a UniK, a new software tool to speed the process

An open source project sponsored by EMC allows applications written in C/C++, Java, Go, Node.js, and now Python to be transformed into unikernels — operating systems that do nothing but run a single, dedicated application.

UniK (pronounced “unique”) is one of several experiments with unikernels to see if their minimal footprint and security profile can work better than containers for some workloads.

UniK promises a simple way for an organization to find out if a unikernel version of a given app runs better than its containerized counterpart. The workload is about the same as would be required to deploy the app as a container.

Written mainly in Go, UniK compiles images that can then be deployed to Virtualbox, VMware vSphere, or Amazon Web Services. Go, C++, Node.js and Python are made part of a runtime that uses the rumprun platform, an existing toolchain for creating unikernel-like software. Java apps are deployed via OSv, a single-application OS that comes with JVM support.

Docker has been interested in bringing its container system and unikernels closer together. Back in January, it acquired Unikernel Systems, hoping to add the company’s toolchain so that deploying unikernels is as easy as compositing a Docker image. UniK uses Docker images for its needed tooling, but it doesn’t yet incorporate Unikernel Systems’ technology — so far, no implementation of a unikernel-centric Docker has been available for public use. 

Another recent project, IncludeOS, has attempted to ease unikernel creation, but not in as broad a manner as UniK. IncludeOS provides a C++ library for a minimal level of operating system functionality to a program, allowing it to be deployed as a self-contained image that boots on a hypervisor. Again, it’s C++ only, where UniK aims to encompass multiple languages.

Serdar Yegulalp

Serdar Yegulalp is a senior writer at InfoWorld. A veteran technology journalist, Serdar has been writing about computers, operating systems, databases, programming, and other information technology topics for 30 years. Before joining InfoWorld in 2013, Serdar wrote for Windows Magazine, InformationWeek, Byte, and a slew of other publications. At InfoWorld, Serdar has covered software development, devops, containerization, machine learning, and artificial intelligence, winning several B2B journalism awards including a 2024 Neal Award and a 2025 Azbee Award for best instructional content and best how-to article, respectively. He currently focuses on software development tools and technologies and major programming languages including Python, Rust, Go, Zig, and Wasm. Tune into his weekly Dev with Serdar videos for programming tips and techniques and close looks at programming libraries and tools.

More from this author