Installation
Docker
The quickest way to get up-and-running with bitmagnet is with Docker Compose. The following docker-compose.yml
is a minimal example. For a more full-featured example including VPN routing and observability services see the docker compose configuration in the GitHub repository.
services:
bitmagnet:
image: ghcr.io/bitmagnet-io/bitmagnet:latest
container_name: bitmagnet
ports:
# API and WebUI port:
- "3333:3333"
# BitTorrent ports:
- "3334:3334/tcp"
- "3334:3334/udp"
restart: unless-stopped
environment:
- POSTGRES_HOST=postgres
- POSTGRES_PASSWORD=postgres
# - TMDB_API_KEY=your_api_key
command:
- worker
- run
- --keys=http_server
- --keys=queue_server
# disable the next line to run without DHT crawler
- --keys=dht_crawler
depends_on:
postgres:
condition: service_healthy
postgres:
image: postgres:16-alpine
container_name: bitmagnet-postgres
volumes:
- ./data/postgres:/var/lib/postgresql/data
# ports:
# - "5432:5432" Expose this port if you'd like to dig around in the database
restart: unless-stopped
environment:
- POSTGRES_PASSWORD=postgres
- POSTGRES_DB=bitmagnet
- PGUSER=postgres
shm_size: 1g
healthcheck:
test:
- CMD-SHELL
- pg_isready
start_period: 20s
interval: 10s
After running docker compose up -d
you should be able to access the web interface at http://localhost:3333
. The DHT crawler should have started and you should see items appear in the web UI within around a minute.
To upgrade your installation you can run:
docker compose down bitmagnet
docker pull ghcr.io/bitmagnet-io/bitmagnet:latest
docker compose up -d bitmagnet
go install
You can also install bitmagnet natively with go install github.com/bitmagnet-io/bitmagnet
. If you choose this method you will need to configure (at a minimum) a Postgres instance for bitmagnet to connect to.
Running the CLI
The bitmagnet CLI is the entrypoint into the application. Take note of the command needed to run the CLI, depending on your installation method.
- If you are using the docker-compose example above, you can run the CLI (while the stack is started) with
docker exec -it bitmagnet bitmagnet
. - If you installed bitmagnet with
go install
, you can run the CLI withbitmagnet
.
When referring to CLI commands in the rest of the documentation, for simplicity we will use bitmagnet
; please substitute this for the correct command. For example, to show the CLI help, run:
bitmagnet --help