Некоторые нюансы установки NetBox¶
Я не буду описывать процесс инсталляции в деталях - он более чем классно описан в официальной документации.
Посмотреть на процесс запуска docker-образа NetBox и работу в GUI можно в видео Димы Фиголя (раз и два) и Эмиля Гарипова.
В целом, если следовать шагам установки/запуска неукоснительно, то всё получится.
Но вот какие есть нюансы, про которые случайно можно забыть.
- В файле configuration.py должен быть заполнен параметр ALLOWED_HOSTS:
ALLOWED_HOSTS = ['netbox.linkmeup.ru', 'localhost']
Тут нужно указать все возможные имена NetBox, к которым вы будете обращаться, например, может быть внешний IP-адрес или 127.0.0.1 или DNS-alias.Если этого не будет сделано, сайт NetBox не откроется и будет показывать 400. В этом же файле должен быть указан SECRET_KEY, который можно выдумать самому или сгенерировать скриптом.
Главная страница будет показывать 502 Bad Gateway, если что-то не так с настройкой базы PostgreSQL: проверьте хост(если ставили на другую машину), порт, имя базы, имя пользователя, пароль.
- С некоторых пор NetBox по умолчанию не даёт никаких прав на чтение без авторизации.Изменяется это всё в том же configuration.py:
EXEMPT_VIEW_PERMISSIONS = ['*']
- А ещё API запросы будут возвращать 200 и не работать, если в API URL не будет слэша в конце.
curl -X GET "http://netbox.linkmeup.ru:45127/api/dcim/devices" -H "Accept: application/json; indent=4"