Netbox Docker
Setup the service:
- Install docker or podman
- Save the following content as
docker-compose.yml
version: '3.5'
services:
################################################
netbox:
image: git.shihaam.dev/dockerfiles/netbox
ports:
- 8000:8000
volumes:
- ./configuration.py:/opt/netbox/netbox/netbox/configuration.py
command: python manage.py runserver 0.0.0.0:8000 --insecure # COMMENT THIS LINE AND REVERSE PROXYIN PRODUCTION !!!
depends_on:
- redis
- postgres
restart: always
################################################
postgres:
image: postgres:13-alpine
volumes:
- ./data/db:/var/lib/postgresql/data
environment:
- POSTGRES_DB=netbox
- POSTGRES_USER=netbox
- POSTGRES_PASSWORD=netbox # CHANGE THIS IN PRODUCTION !!
restart: always
################################################
redis:
image: redis:6.0-alpine
restart: always
- Fetch example config from container
docker compose run --rm netbox cat /opt/netbox/netbox/netbox/configuration_example.py > configuration.py
and edit it according to your enviroment. - Create
devicetype-images
andimage-attachments
folders under media folder
mkdir -p media/image-attachments media/devicetype-images
- Generate Secret key
docker compose run --rm netbox ./generate_secret_key.py
, add output of this to configuration.py - Run
docker compose up -d
PLEASE, FOR THE LOVE OF GOD PLEASE DO NOT USE PASSWORD I GAVE IN THIS REPO IN PRODUCTION !!
Some commands that will be useful
- Migrate Database (required on initial install and upgrade
docker compose exec netbox ./manage.py migrate
- Create new Superuser account, (it might not show any output, just enter a username and press enter)
docker compose exec netbox ./manage.py createsuperuser
Description
Languages
Dockerfile
100%