Skip to content

Releases: netbox-community/netbox-docker

Version 2.5.2

29 Mar 18:51
7bf9e1a
Compare
Choose a tag to compare

Noteworthy Changes

Use same version as Netbox for social-auth-core #973

Fixes build for Netbox 3.4.7 and up

Update dependency django-auth-ldap to v4.2.0 #972

Updates to current version for django-auth-ldap

Update docker-compose.yml #968

Use the full image name in docker-compose.yml

Added more tests #965

Improved the testing in Github Actions

Compatibility

This version of NetBox Docker is only compatible with NetBox v3.4.x and above.
For older versions, use a previous release of NetBox Docker.

Version 2.5.1

16 Mar 10:13
97ee353
Compare
Choose a tag to compare

Noteworthy Changes

Catch DoesNotExist preventing startup #961

Fixed startup problem

Compatibility

This version of NetBox Docker is only compatible with NetBox v3.4.x and above.
For older versions, use a previous release of NetBox Docker.

Version 2.5.0

15 Mar 14:53
93017f1
Compare
Choose a tag to compare

Noteworthy Changes

Don't create superuser with default credentials #955

To improve security in production environment we don't create a default admin anymore

Replaced curl with Skopeo in image functions #956

Improved stability for our build process

Updated to new unit version #951

We are now using Nginx Unit 1.29.1

docker-entrypoint.sh needs to be updated to run manage.py reindex --lazy after migrations #947

Update indexes on start when needed

implement extra LDAP user and group filters as requested in #471 #931

Improved the filter settings for LDAP

Prepend docker.io to image URLs #910

Using the full image name to fixed errors with podman

Fix Github action warnings #933

Using the modern syntax for Github Actions ENV variables and output

Using GITHUB_TOKEN for API #932

Updated the build process to use the GITHUB_TOKEN

Add redis username parameter #929

Redis username can now be set from ENV variables

Fix syntax of docker compose commands #914

Using modern syntax for docker compose

Added start_period to docker-compose example #913

Added example for the health checks

Ensure that '*' or 'localhost' is always in ALLOWED_HOSTS #912

Ensures that ALLOWED_HOSTS is always set correctly

Compatibility

This version of NetBox Docker is only compatible with NetBox v3.4.x and above.
For older versions, use a previous release of NetBox Docker.

Version 2.4.0

15 Dec 14:38
39c7de4
Compare
Choose a tag to compare

Noteworthy Changes

Update postgres Docker tag to v15 #865

Our docker-compose file was updated to use PostgreSQL 15.

Note that you will need to take manual action after you upgrade a live PostgreSQL database.
If your database is not too big, a full backup (with PostgreSQL 14, i.e. before the upgrade) and restore (with a clean PostgreSQL 15, i.e. after the upgrade) is probably the easiest to achieve. Our troubleshooting wiki page has instructions on how to backup and restore a Netbox database. Please test the procedure on a test system first!

Note that there is no requirement to update to PostgreSQL 15, you can stick to version 14 just fine. You could do this with a docker-compose.override.yml like so:

version: '3.4'
services:
  postgres:
    image: postgres:14-alpine

Added settings for CA certificates for LDAP #895

The new settings LDAP_CA_CERT_* can now be configured in environment variables

Optimize psycopg2 dependency #894

We install only one version of psycopg2

Startup scripts complete removal #893

All warnings regarding the old startup scripts were removed

Make nginx-unit listen on IPv4 and IPv6 #889

The container can now be used with IPv6.

Housekeeping var name fix #883

This fixed a bug were the housekeeping job was not run in the correct interval

Add requirements for SAML SSO #876

All Python requirements for SAML authentication are now installed per default

Address housekeeping traceback #866

This changes the startup order of the containers in the example compose file, which prevents a crash in the housekeeping job when the database was not yet initialised

Updates the configuration, changes default for dynamic parameters to None #857

All dynamic parameters can now be set correctly in the Netbox GUI when they aren't defined in environment variables.

Define a volume for the caching Redis #852

To prevent docker from creating new random volumes every time the containers are started, we now define a fixed volume for both Redis containers.

add JOBRESULT_RETENTION to configuration.py #840

JOBRESULT_RETENTION can now be set from an environment variable

Compatibility

This version of NetBox Docker is only compatible with NetBox v3.4.x and above.
For older versions, use a previous release of NetBox Docker.

Version 2.3.0

02 Nov 10:21
8b16b16
Compare
Choose a tag to compare

Noteworthy Changes

In the previous version, we began to clean up NetBox Docker to make it easier to maintain and so that it breaks less often, when the upstream NetBox team releases a new version.

This version continues with more maintenance related work. It also exposes two new variables as environment variables (one general, one ldap-specific) and allows the dynamic configuration parameters to be used, while still allowing them to be set via the environment for backwards compatibility.

In the next version we will probably update the PostgreSQL version from 14 to 15.

Dependency Updates

  • Update dependency psycopg2 to v2.9.4 #856

Adding the JOBRESULT_RETENTION variable #840

The PR #840 exposes a new variable JOBRESULT_RETENTION as an environment variable.

Thanks @tymekxxl for the PR.

Adding the AUTH_LDAP_BIND_AS_AUTHENTICATING_USER variable #779

The PR #779 adds the new environment variable AUTH_LDAP_BIND_AS_AUTHENTICATING_USER to the ldap configuration file. This allows NetBox Docker to bind to an LDAP server using username and password provided by the user being authenticated.

Thanks @BegBlev for the PR.

A volume for the caching Redis #852

Fixes the behavior that the caching Redis, which is actually ephemeral, creates a lot of unmanaged volumes. That is, because that's what the Redis container declares in its manifest. #852 fixes this by defining a managed volume for the caching Redis, even though it's not required otherwise.

Thanks to @Delta1977 for the PR.

Support dynamic configuration parameters #857

All the dynamic configuration parameters can now be configured via the web administration of NetBox. (You can still configure them via environment variables).

The following additional configuration parameters are now available to be configured via environment variables:

ALLOWED_URL_SCHEMES
DEVELOPER
INTERNAL_IPS
LOGIN_PERSISTENCE
CSRF_COOKIE_NAME
SESSION_COOKIE_NAME
POWERFEED_DEFAULT_AMPERAGE
POWERFEED_DEFAULT_MAX_UTILIZATION
POWERFEED_DEFAULT_VOLTAGE

Please refer to the NetBox documentation for their allowed values and proper use.

Thanks go out to @benwa for the submitting an earlier draft and bringing the topic onto our plate.

Compatibility

This version of NetBox Docker is only compatible with NetBox v3.3.x and above.
For older versions, use a previous release of NetBox Docker.

Version 2.2.0

01 Sep 10:12
3f1e45f
Compare
Choose a tag to compare

Noteworthy Changes

Initializers are now a plugin #831

All startup scripts, initializers and ruamel.yaml have been removed from the image. With this change we are now able to publish images faster after a release of a major NetBox version. The initializer functionality has been moved to a plugin. You can find this plugin here: https://github.com/tobiasge/netbox-initializers

Installed bzip2 #836

Some examples in our Wiki use bzip2 to compress backup data. Now we have bzip2 actually in the image.

Removed unnecessary logging from tests #835

To make the test logs clearer we removed some logging output

Update dependency django-storages to v1.13.1 #822

Changelog for django-storages

Compatibility

This version of NetBox Docker is only compatible with NetBox v3.3.x and above.
For older versions, use a previous release of NetBox Docker.

Version 2.1.0

25 Jul 06:20
ebda466
Compare
Choose a tag to compare

Noteworthy Changes

Added our Python venv to the PATH variable #778

With our venv in the path manage.py commands can be started without absolute paths

Arm64 auto build #797

Images for ARM64 are build and pushed to the registries

Using Ubuntu 22.04 because Debian has old packages #805

Because of some security concerns (#800) we use Ubuntu and its newer packages

Add requirements for OIDC SSO #786

OIDC SSO was missing some Python packages to work correctly

LDAP TLS connection use the system trusted root store #808

Restores the same behaviour that we had in the old Alpine images: LDAP connections use the certificates from the system store (#799).

Compatibility

This version of Netbox Docker is only compatible with Netbox v3.2.x and above.
For older versions, use a previous release of Netbox Docker.

Version 2.0.0

12 Jul 16:11
b45934c
Compare
Choose a tag to compare

Noteworthy Changes

This is a major release because the base image is now Debian 11. All users building their own images based on this one must check if they're using Alpine specific commands (like apk). These have to be changed to the Debian version (apt as example).
We are also not building images with the -ldap tag anymore because that is now integrated into the main image.

Fix setting custom field data if custom field object is missing #730

Fixed custom fields problem in initalizers.

feat: Make startup scripts idempotent #729

Running the startup scripts multiple times after changing values won't crash anymore

Added environment variable for CSRF_TRUSTED_ORIGINS #738

CSRF_TRUSTED_ORIGINS can now be set from ENV.

Add support for DeviceType components #742

Added initializers for DeviceType components

Contact startups #728

Added initializers for Contacs and related objects.

Add MAPS_URL to config #750

MAPS_URL can now be set from ENV.

Startup script for cables #736

Added initializers for cables.

Proposing SKIP_GIT now skips all git operations #768

SKIP_GIT now skips all git calls

Update dependency napalm to v4 #791

New major release of Napalm containing a fix that prevented our image from being build.

Compatibility

This version of Netbox Docker is only compatible with Netbox v3.2.x and above.
For older versions, use a previous release of Netbox Docker.

Version 1.6.1

06 Apr 08:00
61a3afb
Compare
Choose a tag to compare

Noteworthy Changes

Netbox 3.2 Database changes

WARNING: This release includes a database migration that will remove the asn, contact_name, contact_phone, and contact_email fields from the site model. (These fields have been superseded by the ASN and contact models introduced in NetBox v3.1.) To protect against the accidental destruction of data, the upgrade process will fail if any sites still have data in any of these fields. To bypass this safeguard, set the NETBOX_DELETE_LEGACY_DATA environment variable when running the upgrade script, which will permit the destruction of legacy data.

NOTE: A set of migration scripts is available to assist with the migration of legacy site data.

Github Actions

Use current versions for our workflow

Changes for Netbox 3.2

Some minor changes to add compatibility with Netbox 3.2 were needed.

Napalm

Version 3.4.0 of Napalm is used

Compatibility

This version of Netbox Docker is only compatible with Netbox v3.2.x and above.
For older versions, use a previous release of Netbox Docker.

Version 1.6.0

21 Feb 11:19
226d843
Compare
Choose a tag to compare

Noteworthy Changes

Added ASN initializer script #685

ASN instances can be created from initializers

Explicitly set GRAPHQL_ENABLED #695

GraphQL can now be configured from ENV variables

Cleanup & Reorg startup scripts #691

The initializer scripts have been re-sorted to make the ordering more logical. Duplicates were removed. Thanks to @ryanmerolle

Changes needed for Netbox 3.2

Some minor changes to add compatibility with Netbox 3.2 were needed (tzdata is installed, mkdocs fixed).

Compatibility

This version of Netbox Docker is only compatible with Netbox v3.1.x and above.
For older versions, use a previous release of Netbox Docker.