Skip to main content

Installation

Docker

The simplest way to run Flipt is via Docker. This streamlines the installation and configuration by using a reliable runtime.

Prerequisites

Docker installation is required on the host, see the official installation docs.

Run the image

docker run -d \
-p 8080:8080 \
-p 9000:9000 \
-v $HOME/flipt:/var/opt/flipt \
flipt/flipt:latest

This will download the image and start a Flipt container and publish ports needed to access the UI and backend server. All persistent Flipt data will be stored in $HOME/flipt.

info

$HOME/flipt is just used as an example, you can use any directory you would like on the host.

The Flipt container uses host mounted volumes to persist data:

Host locationContainer locationPurpose
$HOME/flipt/var/opt/fliptFor storing application data

This allows data to persist between Docker container restarts.

caution

If you don't use mounted volumes to persist your data, your data will be lost when the container exits!

After starting the container you can visit http://0.0.0.0:8080 to view the application.

info

Flipt runs without root in the Docker container as of v1.6.1.

Kubernetes/Helm

You can run Flipt in Kubernetes using the Flipt Helm chart.

note

The Flipt Helm chart is still a work in progress. Any issues or suggestions on how to improve it are welcome in the chart repository.

Prerequisites

Helm must be installed to use the chart. Please refer to Helm's documentation to get started.

Once Helm is set up properly, add the Flipt Helm repo as follows:

helm repo add flipt https://helm.flipt.io

Installing

You can install the Flipt Helm chart with the following command:

helm install flipt flipt/flipt

Binary

You can always download the latest release archive of Flipt from the Releases section on GitHub.

Download to an accessible location on your host and un-zip with the following commands (requires jq):

$ export FLIPT_VERSION=$(curl --silent "https://api.github.com/repos/flipt-io/flipt/releases/latest" | jq '.tag_name?' | tr -d '"' | tr -d 'v')
$ curl -L "https://github.com/flipt-io/flipt/releases/download/v${FLIPT_VERSION}/flipt_${FLIPT_VERSION}_linux_x86_64.tar.gz" -o flipt.tar.gz && \
tar -xvf flipt.tar.gz && \
chmod +x ./flipt

This archive contains the Flipt binary, configuration, database migrations, README, LICENSE, and CHANGELOG files.

info

You will need to update the config file: default.yml if your migrations and database locations differ from the standard locations.

Run the Flipt binary with:

./flipt --config PATH_TO_YOUR_CONFIG

See the Configuration section for more details.