111 lines
3.9 KiB
Markdown
111 lines
3.9 KiB
Markdown
# Varken
|
|
[](https://travis-ci.org/Boerderij/Varken)
|
|
[](https://discord.gg/AGTG44H)
|
|
[](https://www.buymeacoffee.com/varken)
|
|
|
|
Dutch for PIG. PIG is an Acronym for Plex/InfluxDB/Grafana
|
|
|
|
Varken is a standalone command-line utility to aggregate data
|
|
from the Plex ecosystem into InfluxDB. Examples use Grafana for a
|
|
frontend
|
|
|
|
Requirements:
|
|
* Python3.6+
|
|
* Python3-pip
|
|
* [InfluxDB](https://www.influxdata.com/)
|
|
|
|
<p align="center">
|
|
Example Dashboard
|
|
|
|
<img width="800" src="https://nickflix.io/sharex/firefox_NxdrqisVLF.png">
|
|
</p>
|
|
|
|
Supported Modules:
|
|
* [Sonarr](https://sonarr.tv/) - Smart PVR for newsgroup and bittorrent users.
|
|
* [SickChill](https://sickchill.github.io/) - SickChill is an automatic Video Library Manager for TV Shows.
|
|
* [Radarr](https://radarr.video/) - A fork of Sonarr to work with movies à la Couchpotato.
|
|
* [Tautulli](https://tautulli.com/) - A Python based monitoring and tracking tool for Plex Media Server.
|
|
* [Ombi](https://ombi.io/) - Want a Movie or TV Show on Plex or Emby? Use Ombi!
|
|
* Cisco ASA
|
|
|
|
Key features:
|
|
* Multiple server support for all modules
|
|
* Geolocation mapping from [GeoLite2](https://dev.maxmind.com/geoip/geoip2/geolite2/)
|
|
* Grafana [Worldmap Panel](https://grafana.com/plugins/grafana-worldmap-panel/installation) support
|
|
|
|
|
|
## Quick Setup (Git Clone)
|
|
```
|
|
# Clone the repository
|
|
git clone https://github.com/Boerderij/Varken.git /opt/Varken
|
|
|
|
# Follow the systemd install instructions located in varken.systemd
|
|
cp /opt/Varken/varken.systemd /etc/systemd/system/varken.service
|
|
nano /etc/systemd/system/varken.service
|
|
|
|
# Create venv in project
|
|
/usr/bin/python3 -m venv /opt/Varken/varken-venv
|
|
|
|
# Install requirements
|
|
/opt/Varken/varken-venv/bin/python -m pip install -r requirements.txt
|
|
|
|
# Make a copy of varken.example.ini to varken.ini in the data folder
|
|
cp /opt/Varken/data/varken.example.ini /opt/Varken/data/varken.ini
|
|
|
|
# Make the appropriate changes to varken.ini
|
|
nano /opt/Varken/data/varken.ini
|
|
|
|
# Make sure all the files have the appropriate permissions
|
|
chown $USER:$USER -R /opt/Varken
|
|
|
|
# Start the service and enable it
|
|
systemctl start varken
|
|
systemctl enable varken
|
|
```
|
|
### Docker
|
|
|
|
[](https://microbadger.com/images/boerderij/varken)
|
|
[](https://microbadger.com/images/boerderij/varken)
|
|
[](https://hub.docker.com/r/boerderij/varken/)
|
|
[](https://hub.docker.com/r/boerderij/varken/)
|
|
<details><summary>Example</summary>
|
|
<p>
|
|
|
|
```
|
|
docker run -d \
|
|
--name=varken \
|
|
-v <path to data>:/config \
|
|
-e PGID=<gid> -e PUID=<uid> \
|
|
-e TZ=America/Chicago \
|
|
boerderij/varken
|
|
```
|
|
</p>
|
|
</details>
|
|
|
|
#### Tags
|
|
* **latest**
|
|
* **nightly**
|
|
* **release-tag** e.g. v1.0
|
|
|
|
#### Upgrading with docker
|
|
```sh
|
|
docker stop varken
|
|
docker rm varken
|
|
# Run deploy command above
|
|
```
|
|
|
|
### InfluxDB
|
|
[InfluxDB Installation Documentation](https://docs.influxdata.com/influxdb/v1.7/introduction/installation/)
|
|
|
|
Influxdb is required but not packaged as part of Varken. Varken will create
|
|
its database on its own. If you choose to give varken user permissions that
|
|
do not include database creation, please ensure you create an influx database
|
|
named `varken`
|
|
|
|
### Grafana
|
|
[Grafana Installation Documentation](http://docs.grafana.org/installation/)
|
|
|
|
Grafana is used in our examples but not required, nor packaged as part of
|
|
Varken. Panel example pictures are pinned in the grafana-panels channel of
|
|
discord. Future releases may contain a json-generator, but it does not exist
|
|
as varken stands today.
|