Skip to content

netbox: dns initial release#1152

Open
hatchmt wants to merge 1 commit into
linuxserver:netbox-dnsfrom
hatchmt:netbox-dns
Open

netbox: dns initial release#1152
hatchmt wants to merge 1 commit into
linuxserver:netbox-dnsfrom
hatchmt:netbox-dns

Conversation

@hatchmt

@hatchmt hatchmt commented Jun 3, 2026

Copy link
Copy Markdown

linuxserver.io


  • I have read the contributing guideline and understand that I have made the correct modifications

Description:

This adds a new Docker mod, netbox-dns, for the netbox base image. It installs the NetBox DNS plugin (PyPI: netbox-plugin-dns), which provides authoritative DNS data management (zones, records, views, name servers, etc.) inside NetBox.

Benefits of this PR and context:

NetBox DNS is one of the most widely used NetBox plugins for managing DNS as part of network source-of-truth. Providing it as an official mod lets users add it to the LinuxServer NetBox image declaratively via DOCKER_MODS rather than maintaining a custom image or local install script.

How Has This Been Tested?

  • Built the mod image locally and layered it onto the LinuxServer NetBox image via DOCKER_MODS=ghcr.io/hatchmt/mods:netbox-dns.
  • On container start, confirmed in the logs that the package was added to the install list, that pip installed netbox-plugin-dns, and that NetBox's migrations created the plugin's tables.
  • After adding 'netbox_dns' to PLUGINS in configuration.py, verified the DNS plugin loads in the NetBox web UI and that zones/records can be created. Re-running the container confirmed the idempotency check skips reinstall when the package is already present.

Source / References:

Adds the NetBox DNS plugin (PyPI: netbox-plugin-dns) to a netbox
container by appending it to /mod-pip-packages-to-install.list before
the baseimage's init-mods-package-install runs.

The user must add 'netbox_dns' to PLUGINS in configuration.py for the
plugin to be loaded by NetBox. NetBox will then run migrations on
startup to create the plugin's tables.
@LinuxServer-CI

Copy link
Copy Markdown

PR build pushed to ghcr.io/linuxserver/mods:pull_request_1152

@hatchmt

hatchmt commented Jun 3, 2026

Copy link
Copy Markdown
Author

I redeployed my home install using the PR build, and it reinstalled the plugin successfully in the new container without error. Logs below:

netbox-app    | [mod-init] Adding linuxserver/mods:pull_request_1152 to container
netbox-app    | [mod-init] Downloading linuxserver/mods:pull_request_1152 from lscr.io
netbox-app    | [mod-init] Installing linuxserver/mods:pull_request_1152
netbox-app    | [mod-init] linuxserver/mods:pull_request_1152 applied to container
netbox-app    | [migrations] started
netbox-app    | [migrations] no migrations found
netbox-app    | ───────────────────────────────────────
netbox-app    |
netbox-app    |       ██╗     ███████╗██╗ ██████╗
netbox-app    |       ██║     ██╔════╝██║██╔═══██╗
netbox-app    |       ██║     ███████╗██║██║   ██║
netbox-app    |       ██║     ╚════██║██║██║   ██║
netbox-app    |       ███████╗███████║██║╚██████╔╝
netbox-app    |       ╚══════╝╚══════╝╚═╝ ╚═════╝
netbox-app    |
netbox-app    |    Brought to you by linuxserver.io
netbox-app    | ───────────────────────────────────────
netbox-app    |
netbox-app    | To support LSIO projects visit:
netbox-app    | https://www.linuxserver.io/donate/
netbox-app    |
netbox-app    | ───────────────────────────────────────
netbox-app    | GID/UID
netbox-app    | ───────────────────────────────────────
netbox-app    |
netbox-app    | User UID:    1000
netbox-app    | User GID:    1000
netbox-app    | ───────────────────────────────────────
netbox-app    | Linuxserver.io version: v4.6.1-ls355
netbox-app    | Build-date: 2026-05-28T18:27:30+00:00
netbox-app    | ───────────────────────────────────────
netbox-app    |
netbox-app    | **** Adding netbox-plugin-dns to package install list ****
netbox-app    | [pkg-install-init] **** Installing all pip packages ****
netbox-app    | Requirement already satisfied: pip in /lsiopy/lib/python3.12/site-packages (26.1.1)
netbox-app    | Collecting pip
netbox-app    |   Downloading pip-26.1.2-py3-none-any.whl.metadata (4.6 kB)
netbox-app    | Requirement already satisfied: wheel in /lsiopy/lib/python3.12/site-packages (0.47.0)
netbox-app    | Collecting setuptools
netbox-app    |   Downloading setuptools-82.0.1-py3-none-any.whl.metadata (6.5 kB)
netbox-app    | Requirement already satisfied: packaging>=24.0 in /lsiopy/lib/python3.12/site-packages (from wheel) (26.2)
netbox-app    | Downloading pip-26.1.2-py3-none-any.whl (1.8 MB)
netbox-app    |    ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1.8/1.8 MB 40.2 MB/s  0:00:00
netbox-app    | Downloading setuptools-82.0.1-py3-none-any.whl (1.0 MB)
netbox-app    |    ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1.0/1.0 MB 42.5 MB/s  0:00:00
netbox-app    | Installing collected packages: setuptools, pip
netbox-app    |   Attempting uninstall: pip
netbox-app    |     Found existing installation: pip 26.1.1
netbox-app    |     Uninstalling pip-26.1.1:
netbox-app    |       Successfully uninstalled pip-26.1.1
netbox-app    |
netbox-app    | Successfully installed pip-26.1.2 setuptools-82.0.1
netbox-app    | Looking in links: https://wheel-index.linuxserver.io/alpine-3.23/
netbox-app    | Collecting netbox-plugin-dns
netbox-app    |   Downloading netbox_plugin_dns-1.5.8-py3-none-any.whl.metadata (8.5 kB)
netbox-app    | Collecting dnspython (from netbox-plugin-dns)
netbox-app    |   Downloading dnspython-2.8.0-py3-none-any.whl.metadata (5.7 kB)
netbox-app    | Downloading netbox_plugin_dns-1.5.8-py3-none-any.whl (194 kB)
netbox-app    | Downloading dnspython-2.8.0-py3-none-any.whl (331 kB)
netbox-app    | Installing collected packages: dnspython, netbox-plugin-dns
netbox-app    |
netbox-app    | Successfully installed dnspython-2.8.0 netbox-plugin-dns-1.5.8

@hatchmt hatchmt mentioned this pull request Jun 3, 2026
1 task
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Development

Successfully merging this pull request may close these issues.

2 participants