mirror of
				https://github.com/Unleash/unleash.git
				synced 2025-10-27 11:02:16 +01:00 
			
		
		
		
	
		
			
				
	
	
		
			70 lines
		
	
	
		
			2.3 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
			
		
		
	
	
			70 lines
		
	
	
		
			2.3 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
| # 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)
 | |
|       DATABASE_URL: "postgres://postgres:unleash@db/postgres"
 | |
|       # 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:
 | |
|       db:
 | |
|         condition: service_healthy
 | |
|     command: [ "node", "index.js" ]
 | |
|     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"
 | |
|     image: postgres:15
 | |
|     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:
 | |
|       test:
 | |
|         [
 | |
|           "CMD",
 | |
|           "pg_isready",
 | |
|           "--username=postgres",
 | |
|           "--host=127.0.0.1",
 | |
|           "--port=5432"
 | |
|         ]
 | |
|       interval: 2s
 | |
|       timeout: 1m
 | |
|       retries: 5
 | |
|       start_period: 10s
 |