diff --git a/README.md b/README.md
index d801dd46..3c5a8ad2 100755
--- a/README.md
+++ b/README.md
@@ -9,7 +9,7 @@ Scans for devices connected to your WIFI / LAN and alerts you if new and unknown
# 🐳 Docker image
-[](https://github.com/jokob-sk/Pi.Alert/actions/workflows/docker.yml)
+[](https://github.com/jokob-sk/Pi.Alert/actions/workflows/docker.yml)
[](https://github.com/jokob-sk/Pi.Alert)
[](https://hub.docker.com/r/jokobsk/pi.alert)
[](https://hub.docker.com/r/jokobsk/pi.alert)
diff --git a/back/pialert.py b/back/pialert.py
index d9e741a6..35d083c3 100755
--- a/back/pialert.py
+++ b/back/pialert.py
@@ -46,8 +46,8 @@ STOPARPSCAN = pialertPath + "/db/setting_stoparpscan"
# GENERAL settings
# ----------------------
-PRINT_LOG = False
-TIMEZONE = 'Europe/Berlin'
+PRINT_LOG = False
+TIMEZONE = 'Europe/Berlin'
PIALERT_WEB_PROTECTION = False
INCLUDED_SECTIONS = ['internet', 'new_devices', 'down_devices', 'events'] # Specifies which events trigger notifications.
# Remove the event type(s) you don't want to get notified on
@@ -118,7 +118,7 @@ DDNS_ACTIVE = False
PIHOLE_ACTIVE = False
# keep 90 days of network activity if not specified how many days to keep
-DAYS_TO_KEEP_EVENTS = 90
+DAYS_TO_KEEP_EVENTS = 90
pialertPath = '/home/pi/pialert'
dbPath = pialertPath + '/db/pialert.db'
@@ -165,8 +165,7 @@ def main ():
# update NOW time
time_now = datetime.datetime.now()
- # re-load user configuration
-
+ # re-load user configuration
if (sys.version_info > (3,0)):
exec(open(pialertPath + "/config/pialert.conf").read())
else:
diff --git a/dockerfiles/README.md b/dockerfiles/README.md
index 86ba99f2..894bdbdc 100755
--- a/dockerfiles/README.md
+++ b/dockerfiles/README.md
@@ -1,4 +1,4 @@
-[](https://github.com/jokob-sk/Pi.Alert/actions/workflows/docker.yml)
+[](https://github.com/jokob-sk/Pi.Alert/actions/workflows/docker.yml)
[](https://github.com/jokob-sk/Pi.Alert)
[](https://hub.docker.com/r/jokobsk/pi.alert)
[](https://hub.docker.com/r/jokobsk/pi.alert)
@@ -6,54 +6,73 @@
# 🐳 A docker image for Pi.Alert
-
🐳 [Docker hub](https://registry.hub.docker.com/r/jokobsk/pi.alert) | 📄 [Dockerfile](https://github.com/jokob-sk/Pi.Alert/blob/main/Dockerfile) | 📚 [Docker instructions](https://github.com/jokob-sk/Pi.Alert/blob/main//dockerfiles/README.md)
-## ℹ Basic Usage
+
+
+
+
+
+
-### pialert.conf
- - Everytime you rebuilt the container with a new image check if new settings have been added in [pialert.conf](https://github.com/jokob-sk/Pi.Alert/blob/main/config/pialert.conf).
-### Network
- - You will have to run the container on the host network, e.g: `sudo docker run --rm --net=host jokobsk/pi.alert`
+## 📕 Basic Usage
-### Default Port
- - The app is accessible on the port `:20211`.
+- You will have to run the container on the host network, e.g: `sudo docker run --rm --net=host jokobsk/pi.alert`
+- The initial scan can take up-to 15min (with 50 devices and MQTT). Subsequent ones 3 and 5 minutes so wait that long for all of the scans to run.
-> Please note - the initial scan can take up-to 15min (with 50 devices and MQTT). Subsequent ones 3 and 5 minutes so wait that long for all of the scans to run.
+### Docker environment variables
-## 💾 Setup and Backups
+| Variable | Description | Default |
+| :------------- |:-------------| -----:|
+| `PORT` |Port of the web interface | `20211` |
+|`TZ` |Time zone to display stats correctly. Find your time zone [here](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones) | `Europe/Berlin` |
+|`HOST_USER_GID` |User ID (UID) to map the user in the container to a server user with sufficient read&write permissions on the mapped files | `1000` |
+|`HOST_USER_ID` |User Group ID (GID) to map the user group in the container to a server user group with sufficient read&write permissions on the mapped files | `1000` |
-### ❗ **Required**
+### Docker paths
-1. Download `pialert.conf` from [here](https://github.com/jokob-sk/Pi.Alert/tree/main/config).
-2. In `pialert.conf` define your network adapter(s) with the `SCAN_SUBNETS` variable.
- * The adapter will probably be `eth0` or `eth1`.
+| | Path | Description |
+| :------------- | :------------- |:-------------|
+| **Required** | `:/home/pi/pialert/config` | Folder which needs to contain the `pialert.conf` file (see below for details) |
+| **Required** | `:/home/pi/pialert/db/pialert.db` | Map an empty [pialert.db file which can be downloaded from here](https://github.com/jokob-sk/Pi.Alert/blob/main/db/pialert.db) |
+|Optional| `:/home/pi/pialert/db/setting_darkmode` | Map an empty file with the name `setting_darkmode` if you want to force the dark mode on container rebuilt |
+|Optional| `:/home/pi/pialert/front/log` | Logs folder useful for debugging if you have issues setting up the container |
+
+
+### Config (`pialert.conf`)
+
+- Download [pialert.conf from here](https://github.com/jokob-sk/Pi.Alert/tree/main/config).
+- ❗ Set the `SCAN_SUBNETS` variable.
+ * The adapter will probably be `eth0` or `eth1`. (Run `iwconfig` to find your interface name(s))
* Specify the network filter (which **significantly** speeds up the scan process). For example, the filter `192.168.1.0/24` covers IP ranges 192.168.1.0 to 192.168.1.255.
- * Examples for one and two subnets:
- * `SCAN_SUBNETS = '192.168.1.0/24 --interface=eth0'`
- * `SCAN_SUBNETS = ['192.168.1.0/24 --interface=eth0', '192.168.1.0/24 --interface=eth1']`
+ * Examples for one and two subnets (❗ Note the `['...', '...']` format for two or more subnets):
+ * One subnet: `SCAN_SUBNETS = '192.168.1.0/24 --interface=eth0'`
+ * Two subnets: `SCAN_SUBNETS = ['192.168.1.0/24 --interface=eth0', '192.168.1.0/24 --interface=eth1']`
+- Set your reporting preferences.
+- I recommend to check for new settings every time you rebuilt the container.
-3. Use your configuration by:
- * Mapping the container folder to a persistent folder containing `pialert.conf`:
- * `persistent/path/config:/home/pi/pialert/config`
- * ... or by mapping the file directly:
- * `pialert.conf:/home/pi/pialert/config/pialert.conf`
-### 👍 **Recommended**
+### 🛑 **Common issues**
-1. Database backup
- * Download the [original DB from GitHub](https://github.com/jokob-sk/Pi.Alert/blob/main/db/pialert.db).
- * Map the `pialert.db` file (⚠ not folder) from above to `/home/pi/pialert/db/pialert.db` (see [Examples](https://github.com/jokob-sk/Pi.Alert/tree/main/dockerfiles#-examples) for details).
- * If facing issues (AJAX errors, can't write to DB, etc,) make sure permissions are set correctly, and check the logs under `/home/pi/pialert/front/log`.
- * To solve permission issues you can also try to create a DB backup and then run a DB Restore via the **Maintenance > Backup/Restore** section.
- * You can try also setting the owner and group of the `pialert.db` by executing the following on the host system: `docker exec pialert chown -R www-data:www-data /home/pi/pialert/db/pialert.db`.
-2. Map to local User nad Group IDs. Specify the enviroment variables `HOST_USER_ID` and `HOST_USER_GID` if needed.
-3. Set the `TZ` environment variable to your current time zone (e.g.`Europe/Paris`). Find your time zone [here](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones).
-4. Use a custom port by specifying the `PORT` env variable.
-5. Map an empty file with the name `setting_darkmode` if you want to force the dark mode on container rebuilt
- * `- persistent/path/db/setting_darkmode:/home/pi/pialert/db/setting_darkmode`
-6. Check and enable notification service(s) in the `pialert.conf` file.
+💡 Before creating a new issue, please check if a similar issue was [already resolved](https://github.com/jokob-sk/Pi.Alert/issues?q=is%3Aissue+is%3Aclosed).
+
+**Permissions**
+
+* If facing issues (AJAX errors, can't write to DB, empty screen, etc,) make sure permissions are set correctly, and check the logs under `/home/pi/pialert/front/log`.
+* To solve permission issues you can also try to create a DB backup and then run a DB Restore via the **Maintenance > Backup/Restore** section.
+* You can try also setting the owner and group of the `pialert.db` by executing the following on the host system: `docker exec pialert chown -R www-data:www-data /home/pi/pialert/db/pialert.db`.
+* Map to local User and Group IDs. Specify the enviroment variables `HOST_USER_ID` and `HOST_USER_GID` if needed.
+* Map the pialert.db file (⚠ not folder) to `:/home/pi/pialert/db/pialert.db` (see Examples below for details)
+
+**Container restarts / crashes**
+
+* Check the logs for details. Often a required setting for a notification method is missing.
+
+**unable to resolve host**
+
+* Check that your `SCAN_SUBNETS` variable is using the correct mask and `--interface` as outlined in the instructions above.
+
Docker-compose examples can be found below.