Sign inSign up

gofeatureflag/go-feature-flag

Sponsored OSS

By GO Feature Flag

•Updated about 14 hours ago

GO Feature Flag is a simple, complete and lightweight self-hosted feature flag solution 100% OSS.

Image
Developer tools
1

100K+

gofeatureflag/go-feature-flag repository overview

⁠GO Feature Flag Relay Proxy

go-feature-flag logo

Docker Image Version Docker Image Size Docker Hub downloads License Join us on slack


⁠What is GO Feature Flag Relay Proxy?

The GO Feature Flag Relay Proxy retrieve your feature flag configuration file using thomaspoignant/go-feature-flag⁠ SDK and expose APIs to get your flags variations.
It lets a number of servers to connect to a single configuration file.

This can be useful if you want to use the same feature flags configuration file for frontend and backend, this allows to be language agnostic by using standard protocol.

For more information about GO Feature Flag Relay Proxy, please visit github.com/thomaspoignant/go-feature-flag⁠.

⁠Quick reference

⁠How to use this image

go-feature-flag requires a configuration file to be used.

By default, we expect to have this configuration file in the /goff directory of the container and the file should be named goff-proxy.yaml.

The default port used for the service is 1031.

docker run \
  -v $(pwd)/goff-proxy.yaml:/goff/goff-proxy.yaml \
  gofeatureflag/go-feature-flag:latest

⁠Test it locally

This is a small example on how to run go-feature-flag locally.

# Download an example of a basic configuration file.
curl https://raw.githubusercontent.com/thomaspoignant/go-feature-flag/main/cmd/relayproxy/testdata/dockerhub-example/goff-proxy.yaml -o goff-proxy.yaml

# Launch the container
docker run \
  -p 1031:1031 \
  -v $(pwd)/goff-proxy.yaml:/goff/goff-proxy.yaml \
  gofeatureflag/go-feature-flag:latest
  
# Call the API
curl -X 'POST' \
  'http://localhost:1031/v1/feature/flag-only-for-admin/eval'  -H 'accept: application/json'  -H 'Content-Type: application/json' \
  -d '{ "user": { "key": "[email protected]", "anonymous": true, "custom": { "admin": true, "email": "[email protected]" }}, "defaultValue": "false"}'

GO Feature Flag is publishing the following tags:

The numbered version (ex: v1, 1.29, etc ...) are using a distroless base image, ensuring a minimal image size and high security.

The versions with a Debian version name in the tag (e.g., -trixie, -bookworm) are based on debian-slim images. These are useful if you need to extend the image with additional tools. The trixie tag is based on Debian 13 and is the recommended extendable image.

⁠License

View license⁠ information for the software contained in this image.

⁠How can I contribute?

This project is open for contribution, see the contributor's guide⁠ for some helpful tips.

Tag summary

Content type

Image

Digest

sha256:cd0923bcc…

Size

37.6 MB

Last updated

about 14 hours ago

docker pull gofeatureflag/go-feature-flag

This week's pulls

Pulls:

5,650

Last week