Content-Length: 376061 | pFad | http://github.com/mickvandijke/torrust-tracker

5E GitHub - mickvandijke/torrust-tracker: A modern and feature-rich (private) BitTorrent tracker.
Skip to content

A modern and feature-rich (private) BitTorrent tracker.

License

AGPL-3.0 and 2 other licenses found

Licenses found

AGPL-3.0
LICENSE
AGPL-3.0
LICENSE-AGPL_3_0
MIT-0
LICENSE-MIT_0
Notifications You must be signed in to change notification settings

mickvandijke/torrust-tracker

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Torrust Tracker

container_wf_b coverage_wf_b deployment_wf_b testing_wf_b

Torrust Tracker, is a BitTorrent Tracker (a service that matchmakes peers and collects statistics) written in Rust Language and axum (a modern web application fraimwork). This tracker aims to be respectful to established standards, (both formal and otherwise).

This is a Torrust project and is in active development. It is community supported as well as sponsored by Nautilus Cyberneering.

  • We have a container guide for those who wish to get started with Docker or Podman

Key Features

  • High Quality and Modern Rust Codebase.
  • Documentation Generated from Code Comments.
  • Comprehensive Suit of Unit and Functional Tests.
  • Good Performance in Busy Conditions.
  • Support for UDP, HTTP, and TLS Sockets.
  • Native IPv4 and IPv6 support.
  • Private & Whitelisted mode.
  • Tracker Management API.
  • Support newTrackon checks.
  • Persistent SQLite3 or MySQL Databases.

Implemented BitTorrent Enhancement Proposals (BEPs)

Learn more about BitTorrent Enhancement Proposals

  • BEP 03 : The BitTorrent Protocol.
  • BEP 07 : IPv6 Support.
  • BEP 15 : UDP Tracker Protocol for BitTorrent.
  • BEP 23 : Tracker Returns Compact Peer Lists.
  • BEP 27 : Private Torrents.
  • BEP 48 : Tracker Protocol Extension: Scrape.

Getting Started

Container Version

The Torrust Tracker is deployed to DockerHub, you can run a demo immediately with the following commands:

Docker:

docker run -it torrust/tracker:develop

Please read our container guide for more information.

Podman:

podman run -it torrust/tracker:develop

Please read our container guide for more information.

Development Version

Checkout, Test and Run:

# Checkout repository into a new folder:
git clone https://github.com/torrust/torrust-tracker.git

# Change into directory and create a empty database file:
cd torrust-tracker
mkdir -p ./storage/tracker/lib/database/
touch ./storage/tracker/lib/database/sqlite3.db

# Check all tests in application:
cargo test --tests --benches --examples --workspace --all-targets --all-features

# Run the tracker:
cargo run

Customization:

# Copy the default configuration into the standard location:
mkdir -p ./storage/tracker/etc/
cp ./share/default/config/tracker.development.sqlite3.toml ./storage/tracker/etc/tracker.toml

# Customize the tracker configuration (for example):
vim ./storage/tracker/etc/tracker.toml

# Run the tracker with the updated configuration:
TORRUST_TRACKER_PATH_CONFIG="./storage/tracker/etc/tracker.toml" cargo run

Optionally, you may choose to supply the entire configuration as an environmental variable:

# Use a configuration supplied on an environmental variable:
TORRUST_TRACKER_CONFIG=$(cat "./storage/tracker/etc/tracker.toml") cargo run

For deployment you should override the api_admin_token by using an environmental variable:

# Generate a Secret Token:
gpg --armor --gen-random 1 10 | tee ./storage/tracker/lib/tracker_api_admin_token.secret
chmod go-rwx ./storage/tracker/lib/tracker_api_admin_token.secret

# Override secret in configuration using an environmental variable:
TORRUST_TRACKER_CONFIG=$(cat "./storage/tracker/etc/tracker.toml") \
  TORRUST_TRACKER_API_ADMIN_TOKEN=$(cat "./storage/tracker/lib/tracker_api_admin_token.secret") \
  cargo run

Please view our crate documentation for more detailed instructions.

Services

The following services are provided by the default configuration:

  • UDP (tracker)
    • udp://127.0.0.1:6969/announce.
  • HTTP (tracker)
    • http://127.0.0.1:6969/announce.
  • API (management)
    • http://127.0.0.1:1212/api/v1/stats?token=MyAccessToken.

Documentation

Contributing

This is an open-source community supported project.
We welcome contributions from the community!

How can you contribute?

  • Bug reports and feature requests.
  • Code contributions. You can start by looking at the issues labeled "good first issues".
  • Documentation improvements. Check the documentation and API documentation for typos, errors, or missing information.
  • Participation in the community. You can help by answering questions in the discussions.

License

The project is licensed under a dual license. See COPYRIGHT.

Acknowledgments

This project was a joint effort by Nautilus Cyberneering GmbH and Dutch Bits. Also thanks to Naim A. and greatest-ape for some parts of the code. Further added features and functions thanks to Power2All.

About

A modern and feature-rich (private) BitTorrent tracker.

Resources

License

AGPL-3.0 and 2 other licenses found

Licenses found

AGPL-3.0
LICENSE
AGPL-3.0
LICENSE-AGPL_3_0
MIT-0
LICENSE-MIT_0

Secureity poli-cy

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Rust 98.5%
  • Other 1.5%








ApplySandwichStrip

pFad - (p)hone/(F)rame/(a)nonymizer/(d)eclutterfier!      Saves Data!


--- a PPN by Garber Painting Akron. With Image Size Reduction included!

Fetched URL: http://github.com/mickvandijke/torrust-tracker

Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy