Skip to content

Commit

Permalink
update docker docs
Browse files Browse the repository at this point in the history
  • Loading branch information
davidnewhall committed Jul 11, 2024
1 parent 681f315 commit 684117c
Show file tree
Hide file tree
Showing 2 changed files with 38 additions and 27 deletions.
41 changes: 15 additions & 26 deletions docs/install/choosemethod.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,42 +6,31 @@ pagination_next: null
description: Choose an Unpackerr install method.
---

It's generally recommended to install Unpackerr the same way you installed your
Starr or download apps. If your existing infrastructure exists in Docker, then
Unpackerr should probably live in Docker too.
We recommended to installing Unpackerr the same way you installed your
Starr or download apps. If your existing infrastructure exists in Docker,
then Unpackerr should probably live in Docker too.

If you're using the **Folder Watch** feature, then we recommend installing
Unpackerr native (not Docker) on the server where the files-to-be-extracted
reside.

:::caution Docker Folder Watcher
The Folder Watch feature uses `inotify` (a.k.a. `fsnotify`) to identify
changes to the folder. A folder-poller is automatically started when run in
Docker because `inotify` is unreliable.

Watching folders in Docker will cause Unpackerr to constantly poll the
watched-folder for changes. Unpackerr cannot determine when a download is
finished downloading while running in Docker because `inotify` is not reliable.
Make sure to set the `start_delay` high enough to avoid beginning extractions
while files are still being downloaded.

**Alternatively, run Unpackerr as a native service instead of in Docker.**
:::
reside. Read more about that on the [Docker page](docker#folder-watcher).

## Instructions Available

:::tip CPU Hog
Unpackerr uses a lot CPU, and tends not to work well when running on smaller systems like Synology NAS devices.
Running Unpackerr on a system with a large CPU is ideal to avoid system performance degradation.
:::

- [Docker](/docs/install/docker): [Compose](/docs/install/compose), [unRAID](/docs/install/unraid),
[TrueNAS Scale](/docs/install/truenas-scale)
- [Docker](/docs/install/docker): [Compose](/docs/install/compose),
[unRAID](/docs/install/unraid), [TrueNAS Scale](/docs/install/truenas-scale)
- [FreeBSD](/docs/install/freebsd)
- [Linux: with root](/docs/install/linux), [without root (seedbox)](/docs/install/seedbox)
- [Linux: with root](/docs/install/linux), [without root / seedbox](/docs/install/seedbox)
- [macOS](/docs/install/macos)
- [Windows](/docs/install/windows)

:::tip CPU Hog
Unpackerr uses a lot CPU while extracting, and tends not to work well when
running on smaller systems like Synology NAS devices. Running Unpackerr on
a system with a large CPU is ideal to avoid system performance degradation.
The application uses only a few CPU cycles at idle to poll Starr apps and/or
watch folders.
:::

---

## Other Guides
Expand Down
24 changes: 23 additions & 1 deletion docs/install/docker.md
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ also mount `/mnt/storage/downloads:/downloads` on your Unpackerr container. If y
**Make sure Unpackerr can find the downloads in the same place that Sonarr and Radarr find them.**
:::

## Docker Example with config file
## Example with config file

- Copy the [example config file](https://github.com/Unpackerr/unpackerr/blob/main/examples/unpackerr.conf.example)
from the repo, or [generate one](https://notifiarr.com/unpackerr.php).
Expand Down Expand Up @@ -67,6 +67,12 @@ Make sure to set the correct uid and gid with the `--user` parameter. Example:
docker run --user 1000:100 -d -v /mnt/data:/data -v /mnt/config:/config golift/unpackerr
```

**Replace 1000:100 with the correct uid:gid for your environment.**
One of them must provide write access to your archives.

When using compose, add `user: 1000:100` to the service definition.
Find examples in the [Docker Compose instruction](compose).

### Hotio

The primary difference between the golift and hotio containers is how you set the uid and gid.
Expand All @@ -78,3 +84,19 @@ Pass the `PUID` and `PGID` environment variables when using hotio's container. E
# This commands runs hotio/unpackerr with UID 1000 and GID 100.
docker run -e PUID=1000 -e PGID=100 -d -v /mnt/data:/data -v /mnt/config:/config hotio/unpackerr
```

## Folder Watcher

Watching folders in Docker will cause Unpackerr to constantly poll the
watched-folder for changes at a default rate of `1s` (1 second).

The Folder Watch feature uses `inotify` (a.k.a. `fsnotify`) to identify
changes to the watched folder. A folder-poller is automatically started when
run in Docker because `inotify` is unreliable. Disable the folder poller
(and rely on `inotify` only) by setting `folders.interval` to `1ms`.

If Unpackerr has trouble determining when downloads are finished, set
`start_delay` high enough to avoid beginning extracting files that are
still being transferred.

**Alternatively, run Unpackerr as a native service instead of in Docker.**

0 comments on commit 684117c

Please sign in to comment.