external-ip

external-ip

Docker app from xavierh's Repository

Overview

Gets external IP via DIG command ( OpenDNS , Cloudflare, google ) on a scheduled basis that can be customized. Also includes the ability to alert you via pushover if the IP changes.

Docker container that retrieves your external IP address via DIG with optional pushover alert and Apprise support

Gets external IP via DIG command ( opendns , cloudflare, google ) on a scheduled basis that can be customized. Also includes the ability to alert you via pushover if the IP changes.

Example from docker logs

Starting...
Setting sleep delay...
IP: 00.00.00.00 [CHANGE]

Sending pushover message...
{"status":1,"request":"gfdgdf-gdfg-gdfgd-dfgd-fgdfgd"}

IP: 00.00.00.00
dig: couldn't get address for 'ns1.google.com': not found

[Error or Invalid IP address]
dig: couldn't get address for 'ns1.google.com': not found

[Error or Invalid IP address]
IP: 00.00.00.00 [RECOVERY]
IP: 00.00.00.00
IP: 00.00.00.01 [CHANGE]

Sending pushover message...
{"status":1,"request":"gfdgdf-gdfg-gdfgd-dfgd-fgdfgd"}

IP: 00.00.00.01

Docker

Github Repo


Built-In Pushover Example

external_ip:
    image: xavierh/external-ip:latest
    container_name: external_ip
    restart: always
    environment:
        - TZ=America/New_York
        - RECOVERY_ALERT=True/False #optional, default is False
        - DELAY=5m #optional, default is 5 minutes
        - PROVIDER=CLOUDFLARE #optional, default is cloudflare
        - NOTIFICATION_TYPE=PUSHOVER #optional
        - PUSHOVER_TOKEN=token #optional
        - PUSHOVER_USER=user #optional
        - PUSHOVER_TITLE=title #optional, if using PUSHOVER
        - SAVE_IP=True #optional
    volume:
        - /path/to/data:/stor-external-ip #optional but required if using SAVE_IP

APPRISE Example

external_ip:
    image: xavierh/external-ip:latest
    container_name: external_ip
    restart: always
    environment:
        - TZ=America/New_York
        - RECOVERY_ALERT=True/False #optional, default is False
        - DELAY=5m #optional, default is 5 minutes
        - PROVIDER=CLOUDFLARE #optional, default is cloudflare
        - NOTIFICATION_TYPE=APPRISE #optional
        - APPRISE_TITLE=title #optional, if using APPRISE
        - APPRISE_1=pover://user@token #required if using APPRISE
        - APPRISE_2=pushed://appkey/appsecret/ #optional
        - APPRISE_3=discord://webhook_id/webhook_token #optional
        - APPRISE_...=pover://user@token #optional, up to 10
Parameter Function
-e RECOVERY_ALERT=True/False (Optional) Used when NOTIFICATION_TYPE is set.

If the docker container cannot connect to the internet or retrieve an IP address a flag is set. Once the connection has been re-established or an IP address is retrieved a notification will be sent and the flag cleared. The IP address might be the same or different. If you do not wish to receive a notification when retrieving an IP fails mark it as FALSE.

Options: True, False
-e DELAY=5m (Optional) Using standard sleep command.

Options: X (X seconds), Xm (X minutes), Xh (5 hours), and Xd (days)
-e PROVIDER=CLOUDFLARE (Optional)

Options: CLOUDFLARE, GOOGLE, OPENDNS
-e NOTIFICATION_TYPE=PUSHOVER (Optional)

Options: PUSHOVER,APPRISE
-e PUSHOVER_TOKEN= (Required if NOTIFICATION_TYPE is set)
-e PUSHOVER_USER= (Required if NOTIFICATION_TYPE is set)
-e PUSHOVER_TITLE= (Optional) default message is "EXTERNAL IP"
-e APPRISE_TITLE= (Optional) default message is "EXTERNAL IP"
-e APPRISE_1= (1 is required) the app will read up to 10, i.e. APPRISE_2... APPRISE_10, use syntax from CLI syntax https://github.com/caronc/apprise

Install external-ip on Unraid in a few clicks.

Find external-ip in Community Apps on your Unraid server, review the template, and click Install. Unraid handles the Docker app or plugin setup from the published template.

Open the Apps tab on your Unraid server Search Community Apps for external-ip Review the template variables and paths Click Install

Download Statistics

11,211
Total Downloads
188
This Month
279
Avg / Month

Total Downloads Over Time

Loading chart...

Related apps

Details

Repository
xavierh/external-ip
Last Updated2023-11-13
First Seen2022-07-07

Runtime arguments

Network
bridge
Shell
sh
Privileged
false

Template configuration

TZVariable

Container Variable: TZ

Default
America/Chicago
Value
America/Chicago
DELAYVariable

Container Variable: DELAY

Default
5m
Value
5m
PROVIDERVariable

Container Variable: PROVIDER

NOTIFICATION_TYPEVariable

Container Variable: NOTIFICATION_TYPE

PUSHOVER_TOKENVariable

Container Variable: PUSHOVER_TOKEN

PUSHOVER_USERVariable

Container Variable: PUSHOVER_USER

PUSHOVER_TITLEVariable

Container Variable: PUSHOVER_TITLE

RECOVERY_ALERTVariable

Container Variable: RECOVERY_ALERT