Skip to content

The Porkbun DDNS Python API wrapped into a lightweight docker image

License

Notifications You must be signed in to change notification settings

Pavlinchen/Porkbun-DDNS-Docker

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

31 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Porkbun DDNS Docker

This is the Porkbun DDNS Python API wrapped into a lightweight, multiplattform docker image based on the Official Python 3 Alpine Docker Image.

Table of contents:

  1. Usage
  2. Build from source
  3. Environment Variables

Usage:

For an in depth explanation on how the API works or how to get started, please consider the official getting started guide, the official porkbun repository or the official API documentation.

Docker Compose

version: "3"
services:
    porkbunddns:
        image: pavlinchen/porkbun-ddns
        container_name: porkbun-ddns
        restart: always
        pull_policy: always
        environment:
            APIKey: <YourAPIKey>
            SecretAPIKey: <YourSecretAPIKey>
            Domain: <YourDomain>
            Schedule: <YourSchedule (in cron syntax)> #optional
            TZ: <YourTimezone> #optional

CLI

docker run -d \
-e APIKey='<YourAPIKey>' \
-e SecretAPIKey='<YourSecretAPIKey>' \
-e Domain='<YourDomain>' \
-e Schedule='<YourSchedule (cron syntax)>' \
-e TZ='<YourTimezone>' \
--pull=always \
--restart always \
--name porkbun-ddns \
pavlinchen/porkbun-ddns

Build from source:

git clone https://github.com/Pavlinchen/Porkbun-DDNS-Docker
cd Porkbun-DDNS-Docker
docker build . -t porkbun-ddns

Environment Variables

Argument description example default optional
APIKey The API key provided to you by porkbun pk1_abcdef123456 None no
SecretAPIKey The secret API key provided to you by porkbun sk1_abcdef123456 None no
Domain The Domain you want to map to your IP adress, as seen here google.com domains
(would be domains.google.com)
None no
Schedule Schedule to execute the script to sync DNS A records with your IP address in cron format */10 * * * *
(every 10 minutes)
*/5 * * * *
(every 5 minutes)
yes
TZ Your Timezone as tz database name
(only really needed, if used in schedule)
Europe/Berlin UTC yes

About

The Porkbun DDNS Python API wrapped into a lightweight docker image

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published