2022-12-12 20:40:18 +01:00
|
|
|
# This docker compose setup configures:
|
|
|
|
# - the Unleash server instance + the necessary backing Postgres database
|
|
|
|
# - the Unleash proxy
|
|
|
|
#
|
|
|
|
# To learn more about all the parts of Unleash, visit
|
|
|
|
# https://docs.getunleash.io
|
|
|
|
#
|
|
|
|
# NOTE: please do not use this configuration for production setups.
|
|
|
|
# Unleash does not take responsibility for any data leaks or other
|
|
|
|
# problems that may arise as a result.
|
|
|
|
#
|
|
|
|
# This is intended to be used for demo, development, and learning
|
|
|
|
# purposes only.
|
|
|
|
|
|
|
|
version: "3.9"
|
|
|
|
services:
|
|
|
|
|
|
|
|
# The Unleash server contains the Unleash configuration and
|
|
|
|
# communicates with server-side SDKs and the Unleash Proxy
|
|
|
|
web:
|
|
|
|
image: unleashorg/unleash-server:latest
|
|
|
|
ports:
|
|
|
|
- "4242:4242"
|
|
|
|
environment:
|
|
|
|
# This points Unleash to its backing database (defined in the `db` section below)
|
2023-09-28 13:07:03 +02:00
|
|
|
DATABASE_URL: "postgres://postgres:unleash@db/db"
|
2022-12-12 20:40:18 +01:00
|
|
|
# Disable SSL for database connections. @chriswk: why do we do this?
|
|
|
|
DATABASE_SSL: "false"
|
|
|
|
# Changing log levels:
|
|
|
|
LOG_LEVEL: "warn"
|
|
|
|
# Proxy clients must use one of these keys to connect to the
|
|
|
|
# Proxy. To add more keys, separate them with a comma (`key1,key2`).
|
|
|
|
INIT_FRONTEND_API_TOKENS: "default:development.unleash-insecure-frontend-api-token"
|
|
|
|
# Initialize Unleash with a default set of client API tokens. To
|
|
|
|
# initialize Unleash with multiple tokens, separate them with a
|
|
|
|
# comma (`token1,token2`).
|
|
|
|
INIT_CLIENT_API_TOKENS: "default:development.unleash-insecure-api-token"
|
|
|
|
depends_on:
|
2023-02-16 12:50:32 +01:00
|
|
|
db:
|
|
|
|
condition: service_healthy
|
|
|
|
command: [ "node", "index.js" ]
|
2022-12-12 20:40:18 +01:00
|
|
|
healthcheck:
|
|
|
|
test: wget --no-verbose --tries=1 --spider http://localhost:4242/health || exit 1
|
|
|
|
interval: 1s
|
|
|
|
timeout: 1m
|
|
|
|
retries: 5
|
|
|
|
start_period: 15s
|
|
|
|
db:
|
|
|
|
expose:
|
|
|
|
- "5432"
|
2022-12-29 08:42:47 +01:00
|
|
|
image: postgres:15
|
2022-12-12 20:40:18 +01:00
|
|
|
environment:
|
|
|
|
# create a database called `db`
|
|
|
|
POSTGRES_DB: "db"
|
|
|
|
# trust incoming connections blindly (DON'T DO THIS IN PRODUCTION!)
|
|
|
|
POSTGRES_HOST_AUTH_METHOD: "trust"
|
|
|
|
healthcheck:
|
2023-02-16 12:50:32 +01:00
|
|
|
test:
|
|
|
|
[
|
|
|
|
"CMD",
|
|
|
|
"pg_isready",
|
|
|
|
"--username=postgres",
|
|
|
|
"--host=127.0.0.1",
|
|
|
|
"--port=5432"
|
|
|
|
]
|
2022-12-12 20:40:18 +01:00
|
|
|
interval: 2s
|
|
|
|
timeout: 1m
|
|
|
|
retries: 5
|
2023-02-16 12:50:32 +01:00
|
|
|
start_period: 10s
|