by kubernetes

kubernetes / kompose

Go from Docker Compose to Kubernetes

5.7K Stars 474 Forks Last release: 8 months ago (v1.21.0) Apache License 2.0 1.3K Commits 34 Releases

Available items

No Items, yet!

The developer of this repository has not created any items for sale yet. Need a bug fixed? Help with integration? A different license? Create a request here:

Kompose (Kubernetes + Compose)

Build Status Widget Coverage Status Widget GoDoc Widget GoReportCard Widget

is a tool to help users who are familiar with
move to Kubernetes.
takes a Docker Compose file and translates it into Kubernetes resources.

is a convenience tool to go from local Docker development to managing your application with Kubernetes. Transformation of the Docker Compose format to Kubernetes resources manifest may not be exact, but it helps tremendously when first deploying an application on Kubernetes.

Use Case


into Kubernetes deployments and services with one simple command:

$ kompose convert -f docker-compose.yaml
INFO Kubernetes file "frontend-service.yaml" created         
INFO Kubernetes file "redis-master-service.yaml" created     
INFO Kubernetes file "redis-slave-service.yaml" created      
INFO Kubernetes file "frontend-deployment.yaml" created      
INFO Kubernetes file "redis-master-deployment.yaml" created  
INFO Kubernetes file "redis-slave-deployment.yaml" created 

Other examples are provided in the examples directory.


We have multiple ways to install Kompose. Our preferred method is downloading the binary from the latest GitHub release.

Our entire list of installation methods are located in our installation.md document.

Installation methods: - Binary (Preferred method) - Go - CentOS - Fedora - openSUSE/SLE - macOS (Homebrew and MacPorts) - Windows

Binary installation

Kompose is released via GitHub on a three-week cycle, you can see all current releases on the GitHub release page.

Linux and macOS:

# Linux
curl -L https://github.com/kubernetes/kompose/releases/download/v1.21.0/kompose-linux-amd64 -o kompose


curl -L https://github.com/kubernetes/kompose/releases/download/v1.21.0/kompose-darwin-amd64 -o kompose

chmod +x kompose sudo mv ./kompose /usr/local/bin/kompose


Download from GitHub and add the binary to your PATH.


kompose up
is not supported on windows.

Shell autocompletion

We support both Bash and Zsh autocompletion.

# Bash (add to .bashrc for persistence)

Development and building of Kompose

Building with

Requisites: 1. make 2. Golang v1.6 or later 3. Set

correctly or click SettingGOPATH for details

Steps: 1. Clone repository

$ git clone https://github.com/kubernetes/kompose.git $GOPATH/src/github.com/kubernetes/kompose
2. Build with
$ make bin
3. Or build with
$ go build -o kompose main.go
4. Test your changes
$ make test


Documentation can be found at our kompose.io website or our docs folder.

Here is a list of all available docs:

Community, Discussion, Contribution, and Support

Issues: If you find any issues, please file it.

Kubernetes Community: As part of the Kubernetes ecosystem, we follow the Kubernetes community principles. More information can be found on the community page.

Chat (Slack): We're fairly active on Slack and you can find us in the #kompose channel.

Code of Conduct

Participation in the Kubernetes community is governed by the Kubernetes Code of Conduct.

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.