Add basic overview of configuration keys

This commit is contained in:
Justin Li 2015-02-17 01:49:11 -05:00
parent 1bc4ce345d
commit 46c72ddbb4

View file

@ -43,6 +43,36 @@ $ git clone github.com/chihaya/chihaya chihaya/src/github.com/chihaya/chihaya
$ godep go install chihaya/src/github.com/chihaya/cmd/chihaya $ godep go install chihaya/src/github.com/chihaya/cmd/chihaya
``` ```
## Configuration
Copy [`example_config.json`](https://github.com/chihaya/chihaya/blob/master/example_config.json)
to your choice of location, and update the values as required.
The available keys and their default values are as follows:
- `private_enabled: false` if this is a private tracker
- `freeleech_enabled: false` for private trackers, whether download stats should be counted
- `purge_inactive_torrents: true` if torrents should be forgotten after some time
- `announce: "30m"` the announce "interval" value sent to clients
- `min_announce: "15m"` the announce "min_interval" value sent to clients
- `default_num_want: 50` the default number of peers to return if the client has not specified
- `torrent_map_shards: 1` number of torrent maps to use (leave this at 1 in general)
- `allow_ip_spoofing: true` if peers are allowed to set their own IP, this must be enabled for dual-stack IP support
- `dual_stacked_peers: true` if peers may have both an IPv4 and IPv6 address, otherwise only one IP per peer will be used
- `real_ip_header: ""` optionally an HTTP header where the upstream IP is stored, for example `X-Forwarded-For` or `X-Real-IP`
- `respect_af: false` if responses should only include peers of the same address family as the announcing peer
- `client_whitelist_enabled: false` if peer IDs should be matched against the whitelist
- `client_whitelist: []` list of peer ID prefixes to allow
- `http_listen_addr: ":6881"` listen address for the HTTP server
- `http_request_timeout: "10s"`
- `http_read_timeout: "10s"`
- `http_write_timeout: "10s"`
- `http_listen_limit: 0`
- `driver: "noop"`
- `stats_buffer_size: 0`
- `include_mem_stats: true`
- `verbose_mem_stats: false`
- `mem_stats_interval: "5s"`
## Testing ## Testing
Chihaya has end-to-end test coverage for announces in addition to unit tests for Chihaya has end-to-end test coverage for announces in addition to unit tests for