🐳 Docker Image of NetBox
Go to file
Tobias Genannt e3f632d77f Fixes #170 - "drf-yasg" installed into wrong dir
With the new multistage build the pip install command put some packages
in the wrong directory. This resuled in them not being copied into the
runtime images. This commit add the additional "--prefix" option to the
install command. After that all test run and we no longer get the error
"ModuleNotFoundError: No module named 'drf_yasg'".
2019-10-24 17:02:23 +02:00
.github/ISSUE_TEMPLATE Delete issue_template.md 2019-10-17 17:40:27 +02:00
configuration Add support for custom scripts 2019-10-14 09:50:05 +02:00
docker fix typo 2019-10-13 14:03:22 +02:00
env Fix #165 2019-10-14 09:17:32 +02:00
hooks Fix push 2019-10-15 12:28:04 +02:00
initializers Reformat initializers and add some IPv6 examples 2019-10-12 14:23:41 +02:00
reports Renamed devices.py to devices.py.example to set the example report to be disabled by default 2019-01-02 16:45:02 +00:00
scripts Add support for custom scripts 2019-10-14 09:50:05 +02:00
startup_scripts Add missing break 2019-10-12 14:23:11 +02:00
.dockerignore externalize netbox download with wget 2019-10-15 00:34:15 +02:00
.gitignore externalize netbox download with wget 2019-10-15 00:34:15 +02:00
.travis.yml use docker-compose.yml instead of docker-compose.test.yml 2018-06-28 09:59:59 +02:00
build-all.sh Checkout the repository with git 2019-10-15 00:34:15 +02:00
build-branches.sh Refactor to multistage builds 2019-10-15 00:34:15 +02:00
build-latest.sh Corrections for shellcheck warnings 2019-10-15 10:03:39 +02:00
build.sh Corrections for shellcheck warnings 2019-10-15 10:03:39 +02:00
DOCKER_HUB.md Improved Build Job descriptions 2019-10-15 00:34:15 +02:00
docker-compose.yml Merge branch 'custom-scripts' of https://github.com/ScanPlusGmbH/netbox-docker into ScanPlusGmbH-custom-scripts 2019-10-15 12:28:22 +02:00
Dockerfile Fixes #170 - "drf-yasg" installed into wrong dir 2019-10-24 17:02:23 +02:00
LICENSE add license 2018-06-22 16:27:45 +02:00
README.md Checkout the repository with git 2019-10-15 00:34:15 +02:00
VERSION Prepare Version 0.19.1 2019-10-15 12:29:35 +02:00

netbox-docker

The Github repository houses the components needed to build Netbox as a Docker container. Images are built using this code and are released to Docker Hub once a day.

Do you have any questions? Before opening an issue on Github, please join the Network To Code Slack and ask for help in our #netbox-docker channel.

Quickstart

To get Netbox up and running:

git clone -b master https://github.com/netbox-community/netbox-docker.git
cd netbox-docker
docker-compose pull
docker-compose up -d

The application will be available after a few minutes. Use docker-compose port nginx 8080 to find out where to connect to.

$ echo "http://$(docker-compose port nginx 8080)/"
http://0.0.0.0:32768/

# Open netbox in your default browser on macOS:
$ open "http://$(docker-compose port nginx 8080)/"

# Open netbox in your default browser on (most) linuxes:
$ xdg-open "http://$(docker-compose port nginx 8080)/" &>/dev/null &

Alternatively, use something like Reception to connect to docker-compose projects.

Default credentials:

  • Username: admin
  • Password: admin
  • API Token: 0123456789abcdef0123456789abcdef01234567

Dependencies

This project relies only on Docker and docker-compose meeting this requirements:

  • The Docker version must be at least 17.05.
  • The docker-compose version must be at least 1.17.0.

To ensure this, compare the output of docker --version and docker-compose --version with the requirements above.

Reference Documentation

Please refer to the wiki for further information on how to use this Netbox Docker image properly. It covers advanced topics such as using secret files, deployment to Kubernetes as well as NAPALM and LDAP configuration.

Netbox Version

The docker-compose.yml file is prepared to run a specific version of Netbox. To use this feature, set the environment-variable VERSION before launching docker-compose, as shown below. VERSION may be set to the name of any tag of the netboxcommunity/netbox Docker image on Docker Hub.

export VERSION=v2.6.6
docker-compose pull netbox
docker-compose up -d

You can also build a specific version of the Netbox Docker image yourself. VERSION can be any valid git ref in that case.

export VERSION=v2.6.6
./build.sh $VERSION
docker-compose up -d

Breaking Changes

From time to time it might become necessary to re-engineer the structure of this setup. Things like the docker-compose.yml file or your Kubernetes or OpenShift configurations have to be adjusted as a consequence. Since April 2018 each image built from this repo contains a NETBOX_DOCKER_PROJECT_VERSION label. You can check the label of your local image by running docker inspect netboxcommunity/netbox:v2.3.1 --format "{{json .ContainerConfig.Labels}}".

Please read the release notes carefully when updating to a new image version.

Rebuilding & Publishing images

./build.sh can be used to rebuild the Docker image. See ./build.sh --help for more information.

Publishing Docker Images

New Docker images are built and published every 24h on the Docker Build Infrastructure. DOCKER_HUB.md contains more information about the build infrastructure.

Tests

To run the tests coming with Netbox, use the docker-compose.yml file as such:

docker-compose run netbox ./manage.py test

About

This repository is currently maintained and funded by nxt.