🛜 A Go application to track and log your public IP address with a web interface for viewing the history.
Find a file
2024-06-05 21:11:43 +02:00
.github/workflows Initial commit 2024-05-31 13:35:37 +02:00
web chore: Update jQuery script tag with integrity and crossorigin attributes 2024-06-05 21:11:43 +02:00
docker-compose.yaml Initial commit 2024-05-31 13:35:37 +02:00
Dockerfile chore: Update Dockerfile and main.go for serving web content from the 'web' directory 2024-05-31 22:15:38 +02:00
genhistory.py Initial commit 2024-05-31 13:35:37 +02:00
go.mod Initial commit 2024-05-31 13:35:37 +02:00
ip_history.txt Initial commit 2024-05-31 13:35:37 +02:00
license Initial commit 2024-05-31 13:35:37 +02:00
main.go chore: better json and ui 2024-06-01 21:55:05 +02:00
readme.md Update readme.md 2024-06-01 23:35:32 +02:00

IPHistory

The IPHistory project is a simple yet effective solution for tracking and logging the public IP address of your network. It periodically fetches the public IP address and logs it to a file, while also providing a web interface to view the IP history in a clean UI and an endpoint (/history) for JSON format.

iphistory

Running Locally

With Docker

git clone https://github.com/skidoodle/iphistory
cd iphistory
docker build -t iphistory:main .
docker run -p 8080:8080 iphistory:main

Without Docker

git clone https://github.com/skidoodle/iphistory
cd iphistory
go run main.go

Deploying

Docker Compose

version: '3.9'
services:
  iphistory:
    container_name: iphistory
      image: 'ghcr.io/skidoodle/iphistory:main'
      restart: unless-stopped
      ports:
        - '8080:8080'
      volumes:
        - data:/app
volumes:
  data:
    driver: local

Docker Run

docker run \
  -d \
  --name=iphistory \
  --restart=unless-stopped \
  -p 8080:8080 \
  ghcr.io/skidoodle/iphistory:main

License

GPL-3.0