netbox/README.md

57 lines
1.9 KiB
Markdown

# Netbox Docker
## Setup the service:
- Install docker or podman
- Save the following content as `docker-compose.yml`
```yaml
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` and `image-attachments` folders under media folder
```bash
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
```bash
docker compose exec netbox ./manage.py migrate
```
- Create new Superuser account, (it might not show any output, just enter a username and press enter)
```bash
docker compose exec netbox ./manage.py createsuperuser
```