pomerium/docs/docs/installation.md
Caleb Doxsey ab4a68f56f
remove user impersonation and service account cli (#1768)
* remove user impersonation and service account cli

* update doc

* remove user impersonation url query params

* fix flaky test
2021-01-12 09:28:29 -07:00

4.4 KiB

title sidebarDepth description
Download 2 This article describes various ways to install pomerium

Releases

Pomerium is shipped in multiple formats and architectures to suit a variety of deployment patterns. There are two binaries:

  • pomerium is the primary server component. It is a monolithic binary that can perform the function of any services mode.
  • pomerium-cli (optional) is a command-line client for working with Pomerium. Functions include acting as an authentication helper for tools like kubtctl.

toc

pomerium

  • Supported Operating Systems: linux, darwin
  • Supported Architectures: amd64, arm64

Binaries

Official binaries can be found on our GitHub Releases page.

ARCH=[your arch]
OS=[your os]
VERSION=[desired version]
curl -L https://github.com/pomerium/pomerium/releases/download/${VERSION}/pomerium-${OS}-${ARCH}.tar.gz \
    | tar -z -x

Packages

  • Supported formats: rpm, deb
  • Requires systemd support

Official packages can be found on our GitHub Releases page.

Docker Image

Pomerium utilizes a minimal docker container. You can find Pomerium's images on dockerhub. Pomerium can be pulled in several flavors and architectures.

  • :vX.Y.Z: which will pull the a specific tagged release.

    $ docker run pomerium/pomerium:v0.1.0 --version
    v0.1.0+53bfa4e
    
  • :latest: which will pull the most recent tagged release.

    $ docker pull pomerium/pomerium:latest && docker run pomerium/pomerium:latest --version
    v0.2.0+87e214b
    
  • :master : which will pull an image in sync with git's master branch.

    docker pull pomerium/pomerium:latest
    

Helm

Pomerium maintains a helm chart for easy Kubernetes deployment with best practices https://helm.pomerium.io/

helm repo add pomerium https://helm.pomerium.io
helm install pomerium/pomerium

See the README for up to date install options.

Source

::: tip

Officially supported build platforms are limited by envoy proxy. If you have an enoy binary for your platform in your path at start time, pomerium should function correctly.

:::

git clone git@github.com:pomerium/pomerium.git
cd pomerium
make
./bin/pomerium --version

pomerium-cli

  • Supported Operating Systems: linux, darwin, windows, freebsd
  • Supported Architectures: amd64, arm64, armv6, armv7

Binaries

Official binaries can be found on our GitHub Releases page.

ARCH=[your arch]
OS=[your os]
VERSION=[desired version]
curl -L https://github.com/pomerium/pomerium/releases/download/${VERSION}/pomerium-cli-${OS}-${ARCH}.tar.gz \
    | tar -z -x

Packages

  • Supported formats: rpm, deb

Official packages can be found on our GitHub Releases page.

Homebrew

brew tap pomerium/tap
brew install pomerium-cli

Source

git clone git@github.com:pomerium/pomerium.git
cd pomerium
make build NAME=pomerium-cli
./bin/pomerium-cli --help

Release cycle

The current release cycle is aligned on a monthly basis. Pre-1.0.0 we target a MINOR release on or around the first day of each month. We try to hit the targets as closely as possible, while still delivering a quality release.

Pomerium uses Semantic Versioning. In practice this means for a given version number vMAJOR.MINOR.PATCH (e.g. v0.1.0):

  • MAJOR indicates an incompatible API change,
  • MINOR indicates a new functionality in a backwards-compatible manner, and
  • PATCH indicates a backwards-compatible bug fixe.

As Pomerium is still pre-v1.0.0, breaking changes between releases should be expected.

To see difference between releases, please refer to the changelog and upgrading documents.