From 612aa4d227f23fc8aa6735052bb9123092775b37 Mon Sep 17 00:00:00 2001
From: Mark Phelps <209477+markphelps@users.noreply.github.com>
Date: Thu, 28 Sep 2023 14:07:28 -0400
Subject: [PATCH] chore: update install docs (#125)
* chore: update install docs
* chore: update prod/deployment docs
---
installation.mdx | 51 ++++++++++++++++++++++++++++++++++++---
operations/deployment.mdx | 2 +-
operations/production.mdx | 8 +++---
3 files changed, 52 insertions(+), 9 deletions(-)
diff --git a/installation.mdx b/installation.mdx
index a4a4028..9f65ac5 100644
--- a/installation.mdx
+++ b/installation.mdx
@@ -2,6 +2,37 @@
title: "Installation"
---
+## Quickstart
+
+Flipt is a single binary that can be run on any Linux or macOS (arm64) host. You can install and try out Flipt in a few different ways:
+
+
+
+```console Docker
+docker run -d \
+ -p 8080:8080 \
+ -p 9000:9000 \
+ -v $HOME/flipt:/var/opt/flipt \
+ flipt/flipt:latest
+```
+
+```console Kubernetes/Helm
+helm repo add flipt https://helm.flipt.io
+helm install flipt flipt/flipt
+```
+
+```console Homebrew
+brew install flipt-io/brew/flipt
+```
+
+```console Binary
+curl -fsSL https://github.com/flipt-io/flipt/raw/main/install.sh | bash
+```
+
+
+
+For more details on each installation method, see the sections below.
+
## Docker
The simplest way to run Flipt is via Docker. This streamlines the installation
@@ -130,14 +161,26 @@ You can always download the latest release archive of Flipt from the
### Installing
+#### Script
+
+You can use the following script to download and install the latest Flipt binary:
+
+```console
+curl -fsSL https://github.com/flipt-io/flipt/raw/main/install.sh | bash
+```
+
+View the [install.sh](https://github.com/flipt-io/flipt/blob/main/install.sh) source for more details.
+
+#### Manual
+
Download to an accessible location on your host and un-zip with the following
commands (requires [jq](https://stedolan.github.io/jq/)):
```console
-$ 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
+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, README, LICENSE, and CHANGELOG files.
diff --git a/operations/deployment.mdx b/operations/deployment.mdx
index 346a667..3770cf8 100644
--- a/operations/deployment.mdx
+++ b/operations/deployment.mdx
@@ -3,7 +3,7 @@ title: Deployment
description: Details on various ways to deploy Flipt.
---
-Flipt is built and delivered as a single standalone Linux binary.
+Flipt is built and delivered as a single standalone binary.
Head to the [Installation](/installation) section for more details.
Running Flipt with the default configuration is a great way to get to grips with using it.
diff --git a/operations/production.mdx b/operations/production.mdx
index f652bfb..cf40751 100644
--- a/operations/production.mdx
+++ b/operations/production.mdx
@@ -9,7 +9,7 @@ Some of the configuration options and tips to consider when operating Flipt in p
## Database Connection Limits
-By default, the Go `database/sql` client, will have `MaxOpenConn` equal to 0 (unlimited), and `MaxIdleConn` equal to 2.
+By default, the Go `database/sql` client will have `MaxOpenConn` equal to 0 (unlimited), and `MaxIdleConn` equal to 2.
With the databases that listen over a network (MySQL, Postgres, CockroachDB), there are default server limits for the number of open connections it supports.
@@ -42,7 +42,7 @@ The [Go documentation](https://pkg.go.dev/database/sql#DB.SetMaxOpenConns) state
If MaxOpenConns is greater than 0 but less than the new MaxIdleConns, then the new MaxIdleConns will be reduced to match the MaxOpenConns limit.
```
-So you should keep in mind that tuning `MaxOpenConn` might lead to tuning `MaxIdleConn` as well.
+Keep in mind that tuning `MaxOpenConn` may lead to tuning `MaxIdleConn` as well.
@@ -64,7 +64,7 @@ So you should keep in mind that tuning `MaxOpenConn` might lead to tuning `MaxId
## Prepared Statements
-By default, all queries are run as prepared statements. This could post a problem in some environments.
+By default, all queries are run as prepared statements. This could pose a problem in some environments.
For instance, PGBouncer doesn't support prepared statements in its [transaction pooling mode](https://www.pgbouncer.org/faq.html#how-to-use-prepared-statements-with-transaction-pooling).
@@ -90,7 +90,7 @@ You can disable prepared statements for the database client using:
## Debug Logging
-Debug logging can be very useful if you are actively developing or trying to fix problems in an environment, but can have the adverse effect of eating up CPU time under load. Enabling debug logging can also end up mixing useful logs with non-useful ones.
+Debug logging can be useful if you are actively developing or trying to fix problems in an environment, but can have the adverse effect of eating up CPU time under load. Enabling debug logging can end up mixing useful logs with non-useful ones.
It's recommended to disable Flipt's debug logging in a production environment by increasing the log level: