more apps

This commit is contained in:
Tomasz Borychowski
2020-10-25 20:24:03 +00:00
parent f4871bbeae
commit 6a2e89fdcc
10 changed files with 422 additions and 9 deletions

View File

@@ -50,4 +50,4 @@ networks:
- find the docker container IP, e.g. in /data/qbittorrent/logs
- in the settings, in WebUI/Authentication - enter the net mask, e.g.: `192.168.80.0/24`
![Screenshot](qbit.png)
![Screenshot](qbit-settings.png)

View File

@@ -0,0 +1,141 @@
# Home Assistant
- [Homepage](https://www.home-assistant.io/)
- [Github repo](https://github.com/home-assistant/core)
- [DockerHub repo](https://hub.docker.com/r/homeassistant/home-assistant)
- [Docs](https://www.home-assistant.io/docs/)
## Links
- [awesome-ha](/Users/i313281/Projects/_playground/self-hosted-cookbook/apps/home-automation/home-assistant.md)
- [MDI icons](https://cdn.rawgit.com/james-fry/home-assistant-mdi/efd95d7a/home-assistant-mdi.html)
- [Full MDI icons](https://cdn.materialdesignicons.com/5.2.45/)
- [DubhAd/Home-AssistantConfig](https://github.com/DubhAd/Home-AssistantConfig)
- [compatible devices](https://www.hadevices.com/)
## Integrations
- [hacs](https://github.com/hacs/integration)
- [aarlo](https://github.com/twrecked/hass-aarlo)
- [garbage collection](https://github.com/bruxy70/Garbage-Collection)
- [unifi protect](https://github.com/briis/unifiprotect)
- [homeassistant-attributes](https://github.com/pilotak/homeassistant-attributes)
## Plugins
- [simple-thermostat](https://github.com/nervetattoo/simple-thermostat)
- [lovelace-hass-aarlo](https://github.com/twrecked/lovelace-hass-aarlo)
- [mini-graph-card](https://github.com/kalkih/mini-graph-card)
- [custom-header](https://github.com/maykar/custom-header)
## Themes
- [grey-night](https://github.com/home-assistant-community-themes/grey-night)
- [slate](https://github.com/seangreen2/slate_theme)
## docker-compose.yml
```yml
version: '3'
services:
homeassistant:
container_name: home-assistant
image: homeassistant/home-assistant
restart: unless-stopped
environment:
- TZ=Europe/Dublin
ports:
- 8123:8123
volumes:
- ./config:/config
```
## configuration.yml
```yml
default_config:
tts: # Text to speech
- platform: google_translate
group: !include groups.yaml
automation: !include automations.yaml
script: !include scripts.yaml
scene: !include scenes.yaml
frontend:
themes: !include_dir_merge_named themes
homeassistant:
customize: !include customize.yaml
updater:
reporting: false
wake_on_lan:
aarlo:
username: "email@example.com"
password: "password"
webostv:
host: <TV IP>
name: LGTV
turn_on_action:
service: wake_on_lan.send_magic_packet
data:
mac: <MAC_ADDRESS>
broadcast_address: <TV IP | SUBNET MASK>
broadcast_port: 9
customize:
sources:
- Apple TV
- TV
- YouTube
- Plex
notify:
- name: pushover_notifier
platform: pushover
api_key: <API KEY>
user_key: <USER KEY>
calendar:
- platform: caldav
username: "<USERNAME>"
password: "<PASSWORD>"
url: <CALDAV URL>
camera:
- platform: aarlo
media_player:
- platform: aarlo
weather:
- platform: gismeteo
mode: daily
latitude: 0
longitude: 0
sensor:
- platform: aarlo
monitored_conditions:
- recent_activity
- captured_today
- battery_level
- platform: attributes
friendly_name: "Batteries"
attribute: battery_level
unit_of_measurement: "%"
entities:
- sensor.some_sensor_light_level
```
## customize.yml
```yml
sensor.some_sensor_light_level_battery_level:
friendly_name: Living Room
media_player.lgtv:
source_list:
- Apple TV
- Plex
- TV
- YouTube
```
## Tips & Tricks

49
apps/monitors/cachet.md Normal file
View File

@@ -0,0 +1,49 @@
# Cachet
- focuses on posting information rather than pinging services
- looks like setting status is manual
<br>
- [Github repo](https://github.com/CachetHQ/Docker)
## docker-compose.yml
```yml
version: '3.3'
services:
cachet:
image: cachethq/docker:latest
container_name: cachet
restart: unless-stopped
links:
- postgres
ports:
- 3123:8000
environment:
- DB_DRIVER=pgsql
- DB_HOST=postgres
- DB_DATABASE=postgres
- DB_USERNAME=postgres
- DB_PASSWORD=postgres
- APP_KEY=base64:tixFLbMoKffHKfUO1uEK9cGdpJxHYP7uCAp0lwwzEtM=
postgres:
image: postgres:9.5
container_name: cachet-db
restart: unless-stopped
environment:
- POSTGRES_USER=postgres
- POSTGRES_PASSWORD=postgres
volumes:
- ./data:/var/lib/postgresql/data
```
## Tips & Tricks
### Generate APP_KEY
Once the container is running, execute the following command:
```sh
docker exec -i ID_OF_THE_CONTAINER php artisan key:generate
```
The full key should include `base64`, e.g.: `base64:YOUR_UNIQUE_KEY`.

12
apps/monitors/dockprom.md Normal file
View File

@@ -0,0 +1,12 @@
# Dockprom
A monitoring solution for Docker hosts and containers with Prometheus, Grafana, cAdvisor, NodeExporter and alerting with AlertManager.
- [Github repo](https://github.com/stefanprodan/dockprom)
## installation
```sh
git clone https://github.com/stefanprodan/dockprom
cd dockprom
ADMIN_USER=admin ADMIN_PASSWORD=admin docker-compose up -d
```

View File

@@ -0,0 +1,50 @@
# PhpServerMonitor
- Very basic and minimalist
- Various monitors (ping, tcp & http service requests)
- Has Pushover notifications
<br>
- [Github repo](https://github.com/phpservermon/phpservermon)
- [DockerHub repo](https://hub.docker.com/r/alwynpan/phpservermonitor)
## docker-compose.yml
```yml
version: '3.8'
services:
psm:
image: alwynpan/phpservermonitor
container_name: php-server-monitor
restart: unless-stopped
ports:
- 3123:80
depends_on:
- db
environment:
- DATABASE_HOST=db
- DATABASE_PORT=3306
- DATABASE_NAME=psm
- DATABASE_USER=psm
- DATABASE_PASSWORD=psm
- BASE_URL=http://192.168.1.10:3123
- CHECK_INTERVAL=1
- TIMEOUT=10
- DEBUG=true
db:
image: mysql:5.7
container_name: php-server-monitor-db
restart: unless-stopped
ports:
- 3306:3306
environment:
- MYSQL_ROOT_PASSWORD=top_secret
- MYSQL_DATABASE=psm
- MYSQL_USER=psm
- MYSQL_PASSWORD=psm
volumes:
- ./data/:/var/lib/mysql
```

34
apps/monitors/statping.md Normal file
View File

@@ -0,0 +1,34 @@
# Statping
- Looks great
- Has a mobile app (albeit buggy)
- Lots of stuff (charts, data, etc)
- Lots of integrations & notification types
- Every other release doesn't work
- Slow UI
<br>
- [Homepage](https://statping.com/)
- [Github repo](https://github.com/statping/statping/)
- [DockerHub repo](https://hub.docker.com/r/statping/statping)
## docker-compose.yml
```yml
---
statping:
container_name: statping
image: hunterlong/statping
restart: unless-stopped
ports:
- 3020:8080
volumes:
- ./data:/app
# - /var/run/docker.sock:/var/run/docker.sock
environment:
DB_CONN: sqlite
```
- and go to http://192.168.1.10:3020/setup
- or login as `admin:admin`

View File

@@ -0,0 +1,11 @@
# Notifiers by service
| Service | email | slack | webhook | script | telegram | discord | pushover | pushbullet | gotify |
|------------------------|:-----:|:-----:|:-------:|:------:|:--------:|:-------:|:--------:|:----------:|:------:|
| Statping | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ⛔️ | ⛔️ |
| Sonarr | ✅ | ✅ | ✅ | ✅ | ✅ | ⛔️ | ✅ | ✅ | ⛔️ |
| Radarr | ✅ | ✅ | ✅ | ✅ | ✅ | ⛔️ | ✅ | ✅ | ✅ |
| Tautulli | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ⛔️ |
| synology-notifications | ✅ | ✅ | ⛔️ | ⛔️ | ⛔️ | ⛔️ | ⛔️ | ⛔️ | ⛔️ |
| download station | ✅ | ✅ | ⛔️ | ⛔️ | ⛔️ | ⛔️ | ⛔️ | ⛔️ | ⛔️ |
| qbittorrent | ✅ | ⛔️ | ✅ | ✅ | ⛔️ | ⛔️ | ⛔️ | ⛔️ | ⛔️ |

View File

@@ -0,0 +1,35 @@
# Pushover
- As of today, the best notifier out there
- Has mobile app and web desktop client
- Provides email-to-notification service
- Free tier sufficient for a homelab
<br>
- [Homepage](https://pushover.net)
- [Web Client](https://client.pushover.net)
- [Docs](https://pushover.net/api#messages)
## Example script
```sh
#!/bin/bash
# info #666d7b
# success #408062
# warning #af8a1a
# danger #8b4848
MSG=$(printf "<font color=\"#408062\">%s</font>" "$@")
curl -s -X POST \
--data-urlencode "token=<app key>" \
--data-urlencode "user=<user key>" \
--data-urlencode "sound=pushover" \
--data-urlencode "priority=0" \
--data-urlencode "html=1" \
--data-urlencode "title=Home Server" \
--data-urlencode "message=$MSG" \
https://api.pushover.net/1/messages.json
```

View File

@@ -0,0 +1,42 @@
# Synology sms relay
- [Github repo](https://github.com/tborychowski/synology-sms-relay)
- [DockerHub repo](https://hub.docker.com/repository/docker/tborychowski/synology-sms-relay)
- [Docs](https://github.com/tborychowski/synology-sms-relay#docker-compose)
## docker-compose.yml
```yml
---
version: '3.7'
services:
synology-sms-relay:
container_name: synology-sms-relay
image: tborychowski/synology-sms-relay
restart: unless-stopped
ports:
- "3000:3000"
volumes:
- ./script.sh:/app/script.sh
```
## Example pushover `script.sh`
```sh
#!/bin/bash
# info #666d7b
# success #408062
# warning #af8a1a
# danger #8b4848
MSG=$(printf "<font color=\"#408062\">%s</font>" "$@")
curl -s -X POST \
--data-urlencode "token=<app key>" \
--data-urlencode "user=<user key>" \
--data-urlencode "sound=pushover" \
--data-urlencode "priority=0" \
--data-urlencode "html=1" \
--data-urlencode "title=Home Server" \
--data-urlencode "message=$MSG" \
https://api.pushover.net/1/messages.json
```