ci(docker): add Docker Hub description sync and DOCKERHUB.md
This commit is contained in:
parent
af08073aa8
commit
e4f45332ca
2 changed files with 139 additions and 0 deletions
9
.github/workflows/release.yml
vendored
9
.github/workflows/release.yml
vendored
|
|
@ -62,6 +62,15 @@ jobs:
|
||||||
build-args: |
|
build-args: |
|
||||||
VERSION=${{ github.ref_name }}
|
VERSION=${{ github.ref_name }}
|
||||||
|
|
||||||
|
- name: Update Docker Hub description
|
||||||
|
uses: peter-evans/dockerhub-description@v4
|
||||||
|
with:
|
||||||
|
username: ${{ secrets.DOCKERHUB_USERNAME }}
|
||||||
|
password: ${{ secrets.DOCKERHUB_TOKEN }}
|
||||||
|
repository: torrentclaw/unarr
|
||||||
|
readme-filepath: DOCKERHUB.md
|
||||||
|
short-description: "Powerful terminal tool for torrent search and management"
|
||||||
|
|
||||||
virustotal:
|
virustotal:
|
||||||
needs: release
|
needs: release
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
|
|
|
||||||
130
DOCKERHUB.md
Normal file
130
DOCKERHUB.md
Normal file
|
|
@ -0,0 +1,130 @@
|
||||||
|
# unarr
|
||||||
|
|
||||||
|
Powerful terminal tool for torrent search and management. Search 30+ sources, inspect quality, discover popular content, find streaming providers, and manage downloads — all from your terminal.
|
||||||
|
|
||||||
|
**[GitHub](https://github.com/torrentclaw/unarr)** | **[Documentation](https://github.com/torrentclaw/unarr#readme)** | **[Releases](https://github.com/torrentclaw/unarr/releases)**
|
||||||
|
|
||||||
|
## Quick Start
|
||||||
|
|
||||||
|
### 1. Setup (interactive wizard)
|
||||||
|
|
||||||
|
```bash
|
||||||
|
docker run -it --rm \
|
||||||
|
-v ~/.config/unarr:/config \
|
||||||
|
torrentclaw/unarr setup
|
||||||
|
```
|
||||||
|
|
||||||
|
### 2. Run the daemon
|
||||||
|
|
||||||
|
```bash
|
||||||
|
docker run -d --name unarr \
|
||||||
|
--restart unless-stopped \
|
||||||
|
--network host \
|
||||||
|
--read-only --memory 512m \
|
||||||
|
-v ~/.config/unarr:/config \
|
||||||
|
-v ~/Media:/downloads \
|
||||||
|
torrentclaw/unarr
|
||||||
|
```
|
||||||
|
|
||||||
|
## Docker Compose
|
||||||
|
|
||||||
|
```yaml
|
||||||
|
services:
|
||||||
|
unarr:
|
||||||
|
image: torrentclaw/unarr:latest
|
||||||
|
container_name: unarr
|
||||||
|
restart: unless-stopped
|
||||||
|
user: "1000:1000"
|
||||||
|
read_only: true
|
||||||
|
tmpfs:
|
||||||
|
- /tmp:size=64m,mode=1777
|
||||||
|
volumes:
|
||||||
|
- ./config:/config
|
||||||
|
- ~/Media:/downloads
|
||||||
|
- unarr-data:/data
|
||||||
|
environment:
|
||||||
|
- TZ=UTC
|
||||||
|
# - UNARR_API_KEY=tc_your_key_here
|
||||||
|
deploy:
|
||||||
|
resources:
|
||||||
|
limits:
|
||||||
|
memory: 512M
|
||||||
|
cpus: "2.0"
|
||||||
|
network_mode: host
|
||||||
|
|
||||||
|
volumes:
|
||||||
|
unarr-data:
|
||||||
|
```
|
||||||
|
|
||||||
|
## Volumes
|
||||||
|
|
||||||
|
| Path | Purpose |
|
||||||
|
|------|---------|
|
||||||
|
| `/config` | Configuration file (`config.toml`) |
|
||||||
|
| `/downloads` | Finished media downloads |
|
||||||
|
| `/data` | Internal state: torrent metadata, cache |
|
||||||
|
|
||||||
|
## Environment Variables
|
||||||
|
|
||||||
|
| Variable | Description | Default |
|
||||||
|
|----------|-------------|---------|
|
||||||
|
| `TZ` | Timezone | `UTC` |
|
||||||
|
| `UNARR_API_KEY` | TorrentClaw API key | from config |
|
||||||
|
| `UNARR_API_URL` | API endpoint | `https://torrentclaw.com` |
|
||||||
|
| `UNARR_DOWNLOAD_DIR` | Download directory | `/downloads` |
|
||||||
|
| `UNARR_CONFIG_DIR` | Config directory | `/config` |
|
||||||
|
| `UNARR_COUNTRY` | Country code (ISO 3166) | `US` |
|
||||||
|
|
||||||
|
## Networking
|
||||||
|
|
||||||
|
**Host mode** (recommended) gives full P2P performance with no port management:
|
||||||
|
|
||||||
|
```yaml
|
||||||
|
network_mode: host
|
||||||
|
```
|
||||||
|
|
||||||
|
**Bridge mode** — more isolated, but requires explicit ports:
|
||||||
|
|
||||||
|
```yaml
|
||||||
|
ports:
|
||||||
|
- "6881-6889:6881-6889/tcp"
|
||||||
|
- "6881-6889:6881-6889/udp"
|
||||||
|
```
|
||||||
|
|
||||||
|
## Running Commands
|
||||||
|
|
||||||
|
Use `docker exec` for one-off commands while the daemon is running:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
docker exec unarr unarr search "inception" --quality 1080p
|
||||||
|
docker exec unarr unarr popular --limit 10
|
||||||
|
docker exec unarr unarr status
|
||||||
|
docker exec unarr unarr doctor
|
||||||
|
```
|
||||||
|
|
||||||
|
## Supported Architectures
|
||||||
|
|
||||||
|
| Architecture | Tag |
|
||||||
|
|-------------|-----|
|
||||||
|
| `linux/amd64` | `latest`, `0.3`, `0.3.5` |
|
||||||
|
| `linux/arm64` | `latest`, `0.3`, `0.3.5` |
|
||||||
|
|
||||||
|
## Tags
|
||||||
|
|
||||||
|
| Tag | Description |
|
||||||
|
|-----|-------------|
|
||||||
|
| `latest` | Latest stable release |
|
||||||
|
| `X.Y.Z` | Specific version (e.g. `0.3.5`) |
|
||||||
|
| `X.Y` | Latest patch for minor version (e.g. `0.3`) |
|
||||||
|
|
||||||
|
## Image Details
|
||||||
|
|
||||||
|
- **Base image:** Alpine 3.21
|
||||||
|
- **User:** `unarr` (UID 1000, GID 1000)
|
||||||
|
- **Entrypoint:** `unarr start` (daemon mode)
|
||||||
|
- **Read-only filesystem** — only mounted volumes are writable
|
||||||
|
- **No root required** — runs as non-root by default
|
||||||
|
|
||||||
|
## License
|
||||||
|
|
||||||
|
MIT License — see [LICENSE](https://github.com/torrentclaw/unarr/blob/main/LICENSE) for details.
|
||||||
Loading…
Add table
Add a link
Reference in a new issue