mirror of
https://github.com/PluralKit/PluralKit.git
synced 2026-02-04 13:06:50 +00:00
7.9 KiB
7.9 KiB
Services Overview
TODO: write more about what each service does (and quirks)
Configuration
Configuration is done through environment variables. A potentially uncompleted and/or outdated list is as follows:
Key:
- G - gateway
- A - api
- ST - scheduled_tasks
- AV - avatars
- D - dispatch
| Used by: | Name | Description |
|---|---|---|
| G, ST | pluralkit__discord__bot_token |
the Discord bot token to connect with |
| G, A | pluralkit__discord__client_id |
the ID of the bot's user account, used for calculating the bot's own permissions and for the link in pk;invite. |
| A | pluralkit__discord__client_secret |
the client secret of the application, used for OAuth with Discord |
| G | pluralkit__discord__cluster__total_shards |
the total number of shards |
| G | pluralkit__discord__cluster__total_nodes |
the total number of clusters |
| G | pluralkit__discord__cluster__node_id |
the ID of the cluster (overwritten at runtime when operating under managers that can't template the node id into this variable, such as kubernetes) |
| G | pluralkit__discord__max_concurrency |
number of identify requests per 5 seconds -- see Discord docs |
| G | pluralkit__discord__gateway_target |
the URL of a dotnet bot instance to send events to |
| G, ST | pluralkit__discord__api_base_url |
the base Discord API url used for HTTP API requests |
| G, A, ST, AV | pluralkit__db__data_db_uri |
the URI of the PostgreSQL data database in libpq format |
| G, A, ST, AV | pluralkit__db__data_redis_addr |
the address of the Redis instance, in standard Redis format |
| G, A, ST, AV | pluralkit__db__db_password |
the password to use for PostgreSQL database connections |
| G, A, ST, AV | pluralkit__db__messages_db_uri |
the URI of the PostgreSQL messages database in libpq format |
| G, A, ST, AV | pluralkit__db__stats_db_uri |
the URI of the PostgreSQL statistics database in libpq format |
| ST | pluralkit__scheduled_tasks__expected_gateway_count |
the total number of expected running gateway instances |
| ST | pluralkit__scheduled_tasks__gateway_url |
the base URL used for querying statistics from gateway instances |
| ST | pluralkit__scheduled_tasks__set_guild_count |
boolean used to determine if the guild count should be updated in Redis for the bot status |
| A | pluralkit__api__addr |
the bind address used for the Rust API |
| A | pluralkit__api__ratelimit_redis_addr |
the address of a Redis instance to use for request ratelimiting |
| A | pluralkit__api__remote_url |
the remote url of the dotnet API instance |
| A | pluralkit__api__temp_token2 |
the token used in the API for fetching app authorization |
| AV | pluralkit__avatars__cdn_url |
the CDN address used for avatar storage |
| AV | pluralkit__avatars__cloudflare_token |
the Cloudflare token to use for avatar cache cleanup |
| AV | pluralkit__avatars__cloudflare_zone_id |
the Cloudflare zone id to use for avatar cache cleanup |
| AV | pluralkit__avatars__s3__application_id |
the application id of the s3 instance to use for avatar storage |
| AV | pluralkit__avatars__s3__application_key |
the application key of the s3 instance to use for avatar storage |
| AV | pluralkit__avatars__s3__bucket |
the bucket to use for avatar storage |
| AV | pluralkit__avatars__s3__endpoint |
the endpoint URL of the s3 instance to use for avatar storage |
| G, A, ST, AV, D | pluralkit__json_log |
boolean used to enable or disable JSON log formatting |
| G | pluralkit__runtime_config_key |
the instance identifier key used when fetching configuration from Redis at runtime to differentiate gateway instances (ex. 'gateway') |
| G, A, ST, AV, D | pluralkit__run_metrics_server |
boolean used to enable or disable the inbuilt Prometheus format metrics server |
| G, A, ST, AV, D | pluralkit__sentry_url |
the URL of a sentry instance to publish errors to |