11 KiB
Executable File
🐳 Una imagen docker para Pi.Alert
🐳 Docker hub | 📑 Instrucciones para Docker | 🆕 Release notes | 📚 Todos los Docs
📕 Uso básico
- Tendrás que ejecutar el contenedor en la red del host, por ejemplo:
docker run -d --rm --network=host \
-v local/path/pialert/config:/home/pi/pialert/config \
-v local/path/pialert/db:/home/pi/pialert/db \
-e TZ=Europe/Berlin \
-e PORT=20211 \
jokobsk/pi.alert:latest
- El escaneo inicial puede tardar hasta 15 minutos (con 50 dispositivos y MQTT). Los siguientes pueden durar entre 3 y 5 minutos, así que espere a que se ejecuten todos los escaneos.
Variables de entorno Docker
| Variable | Descripción | Predeterminado |
|---|---|---|
PORT |
Puerto de la interfaz web | 20211 |
TZ |
Zona horaria para mostrar correctamente las estadísticas. Encuentre su zona horaria aquí | Europe/Berlin |
HOST_USER_GID |
ID de usuario (UID) para asignar el usuario del contenedor a un usuario del servidor con suficientes permisos de lectura y escritura en los archivos asignados | 1000 |
HOST_USER_ID |
ID de grupo de usuarios (GID) para asignar el grupo de usuarios del contenedor a un grupo de usuarios del servidor con suficientes permisos de lectura y escritura en los archivos asignados | 1000 |
Rutas Docker
| Ruta | Descripción | |
|---|---|---|
| Obligatorio | :/home/pi/pialert/config |
Carpeta que contendrá el archivo pialert.conf (para más detalles, véase más abajo) |
| Obligatorio | :/home/pi/pialert/db |
Carpeta que contendrá el archivo pialert.db |
| Opcional | :/home/pi/pialert/front/log |
Carpeta de registros útil para depurar si tiene problemas al configurar el contenedor |
| Opcional | :/etc/pihole/pihole-FTL.db |
Archivo de base de datos pihole-FTL.db de PiHole. Necesario si desea utilizar PiHole |
| Opcional | :/etc/pihole/dhcp.leases |
Archivo dhcp.leases de PiHole. Obligatorio si desea utilizar el archivo dhcp.leases de PiHole. Tiene que coincidir con la correspondiente entrada de configuración DHCPLSS_paths_to_check. (La ruta en el contenedor debe contener pihole) |
| Opcional | :/home/pi/pialert/front/api |
Una simple API endpoint que contiene archivos json estáticos (pero actualizados regularmente) y otros archivos. |
Configurar (pialert.conf)
- Si no está disponible, la aplicación genera un archivo
pialert.confypialert.dbpor defecto en la primera ejecución. - La forma preferida es gestionar la configuración a través de la sección "Configuración" de la interfaz de usuario.
- Puede modificar pialert.conf directamente, si es necesario.
Ajustes importantes
Estos son los ajustes más importantes para obtener al menos alguna salida en la pantalla de tus Dispositivos. Por lo general, sólo se utiliza un enfoque, pero usted debe ser capaz de combinar estos enfoques.
Para arp-scan: ARPSCAN_RUN, SCAN_SUBNETS
- ❗ Para usar el método arp-scan, necesitas configurar la variable
SCAN_SUBNETS. Consulte la documentación sobre cómo configurar SUBNETS, VLANs y limitaciones
Para pihole: PIHOLE_RUN, DHCPLSS_RUN
Hay dos maneras de importar dispositivos PiHole. A través del plugin de importación PiHole (PIHOLE) o del plugin DHCP leases (DHCPLSS).
PiHole (Sincronización de dispositivos)
PIHOLE_RUN: Necesitas mapear:/etc/pihole/pihole-FTL.dben el ficherodocker-compose.ymlsi activas esta opción.
DHCP Leases (Importación de dispositivos)
DHCPLSS_RUN: Es necesario mapear:/etc/pihole/dhcp.leasesen el ficherodocker-compose.ymlsi se activa esta opción.- La configuración anterior tiene que coincidir con una entrada de configuración correspondiente
DHCPLSS_paths_to_check(la ruta en el contenedor debe contenerpiholeya que PiHole utiliza un formato diferente del archivodhcp.leases).
Se recomienda utilizar el mismo intervalo de programación para todos los plugins responsables de descubrir nuevos dispositivos.
Problemas comunes
💡 Antes de crear una nueva incidencia, comprueba si ya se ha resuelto una incidencia similar.
⚠ Compruebe también los problemas comunes y los consejos de depuración.
📄 Ejemplos
Ejemplo 1
version: "3"
services:
pialert:
container_name: pialert
# Utilice la siguiente línea si desea probar la última imagen de desarrollo
# image: "jokobsk/pi.alert_dev:latest"
image: "jokobsk/pi.alert:latest"
network_mode: "host"
restart: unless-stopped
volumes:
- local/path/pialert/config:/home/pi/pialert/config
- local/path/pialert/db:/home/pi/pialert/db
# (optional) useful for debugging if you have issues setting up the container
- local/path/logs:/home/pi/pialert/front/log
environment:
- TZ=Europe/Berlin
- HOST_USER_ID=1000
- HOST_USER_GID=1000
- PORT=20211
Para ejecutar el contenedor ejecute: sudo docker-compose up -d
Ejemplo 2
Ejemplo de SeimuS.
pialert:
container_name: PiAlert
hostname: PiAlert
privileged: true
# Utilice la siguiente línea si desea probar la última imagen de desarrollo
# image: "jokobsk/pi.alert_dev:latest"
image: jokobsk/pi.alert:latest
environment:
- TZ=Europe/Bratislava
restart: always
volumes:
- ./pialert/pialert_db:/home/pi/pialert/db
- ./pialert/pialert_config:/home/pi/pialert/config
network_mode: host
Para ejecutar el contenedor ejecute: sudo docker-compose up -d
Ejemplo 3
docker-compose.yml
version: "3"
services:
pialert:
container_name: pialert
# Utilice la siguiente línea si desea probar la última imagen de desarrollo
# image: "jokobsk/pi.alert_dev:latest"
image: "jokobsk/pi.alert:latest"
network_mode: "host"
restart: unless-stopped
volumes:
- ${APP_DATA_LOCATION}/pialert/config:/home/pi/pialert/config
- ${APP_DATA_LOCATION}/pialert/db/pialert.db:/home/pi/pialert/db/pialert.db
# (optional) useful for debugging if you have issues setting up the container
- ${LOGS_LOCATION}:/home/pi/pialert/front/log
environment:
- TZ=${TZ}
- HOST_USER_ID=${HOST_USER_ID}
- HOST_USER_GID=${HOST_USER_GID}
- PORT=${PORT}
.env file
#VARIABLES DE RUTA GLOBAL
APP_DATA_LOCATION=/path/to/docker_appdata
APP_CONFIG_LOCATION=/path/to/docker_config
LOGS_LOCATION=/path/to/docker_logs
#VARIABLES DE ENTORNO
TZ=Europe/Paris
HOST_USER_ID=1000
HOST_USER_GID=1000
PORT=20211
#VARIABLES DE DESARROLLO
DEV_LOCATION=/path/to/local/source/code
Para ejecutar el contenedor ejecute: sudo docker-compose --env-file /path/to/.env up
Example 4
Por cortesía de pbek. El volumen pialert_db es utilizado por el directorio db. Los dos archivos de configuración se montan directamente desde una carpeta local a sus lugares en la carpeta config. Puedes hacer una copia de seguridad de la carpeta docker-compose.yaml y de la carpeta docker volumes.
pialert:
# Utilice la siguiente línea si desea probar la última imagen de desarrollo
# image: "jokobsk/pi.alert_dev:latest"
image: jokobsk/pi.alert
ports:
- "80:20211/tcp"
environment:
- TZ=Europe/Vienna
networks:
local:
ipv4_address: 192.168.1.2
restart: unless-stopped
volumes:
- pialert_db:/home/pi/pialert/db
- ./pialert/pialert.conf:/home/pi/pialert/config/pialert.conf
🏅 Reconocimientos
Muchas gracias a @Macleykun por ayudarme en consejos y trucos para Dockerfile(s):
Muchas gracias a @cvc90 por ayudarme y realizar esta traduccion:
☕ Apóyame
BTC: 1N8tupjeCK12qRVU2XrV17WvKK7LCawyZM

