networktocode/nautobot!Nautobot
Nautobot 是一款网络事实来源(Network Source of Truth)与网络自动化平台,旨在为网络基础设施提供统一的信息管理和自动化能力。该平台最初基于 NetBox(v2.10.4)分支开发,现作为独立项目发展,适用于各类网络环境的设备管理、配置自动化及数据整合需求。
Nautobot 基于 Python 的 Django 框架构建,后端支持 PostgreSQL 或 MySQL 数据库,提供 Web 应用界面及 API 接口,便于网络工程师和自动化系统访问与交互。
需先准备 PostgreSQL 数据库,示例使用外部数据库:
bash# 启动 Nautobot 容器 docker run -d \ --name nautobot \ -p 8000:8000 \ -e NAUTOBOT_DATABASE_URL=postgresql://user:password@db-host:5432/nautobot \ -e NAUTOBOT_SECRET_KEY="your-secure-secret-key-min-50-chars" \ -e NAUTOBOT_ALLOWED_HOSTS="localhost,127.0.0.1" \ networktocode/nautobot:latest
创建 docker-compose.yml:
yamlversion: '3.8' services: db: image: postgres:13 volumes: - postgres_data:/var/lib/postgresql/data/ environment: - POSTGRES_USER=nautobot - POSTGRES_PASSWORD=nautobot_password - POSTGRES_DB=nautobot restart: always nautobot: image: networktocode/nautobot:latest depends_on: - db ports: - "8000:8000" environment: - NAUTOBOT_DATABASE_URL=postgresql://nautobot:nautobot_password@db:5432/nautobot - NAUTOBOT_SECRET_KEY="your-secure-secret-key-min-50-chars" - NAUTOBOT_ALLOWED_HOSTS="localhost,127.0.0.1" - NAUTOBOT_DEBUG=False volumes: - nautobot_data:/opt/nautobot/data restart: always volumes: postgres_data: nautobot_data:
启动服务:
bashdocker-compose up -d
容器启动后,创建管理员账户:
bashdocker exec -it nautobot nautobot-server createsuperuser
访问 Web 界面:http://<服务器IP>:8000,使用创建的管理员账户登录
| 环境变量 | 描述 | 示例值 |
|---|---|---|
NAUTOBOT_DATABASE_URL | 数据库连接 URL,支持 PostgreSQL 或 MySQL | postgresql://user:pass@db:5432/nautobot |
NAUTOBOT_SECRET_KEY | Django 应用密钥,至少 50 字符,用于数据加密 | your-very-secure-and-long-secret-key-here |
NAUTOBOT_ALLOWED_HOSTS | 允许访问的主机名列表,逗号分隔 | localhost,nautobot.example.com |
NAUTOBOT_DEBUG | 是否启用调试模式(生产环境禁用) | False (默认) / True |
NAUTOBOT_TIME_ZONE | 应用时区 | Asia/Shanghai |
NAUTOBOT_CACHEOPS_REDIS | Redis 连接 URL,用于缓存和异步任务(如使用 Redis) | redis://redis:6379/1 |
通过 NAUTOBOT_PLUGINS 环境变量启用插件,格式为 JSON 数组:
bash-e NAUTOBOT_PLUGINS='["nautobot_golden_config", "nautobot_chatops"]'
插件特定配置需参考对应插件文档,通常通过环境变量或配置文件设置。
Nautobot 基于多层架构设计,简化架构如下:
!应用栈架构图
Nautobot 插件生态丰富,以下为常见插件示例:
提供网络配置管理能力,包括配置备份、合规检查、模板生成等功能:
!Golden Config 插件截图
支持通过 Slack、Microsoft Teams 等聊天工具触发 Nautobot 操作,实现交互式自动化:
!ChatOps 插件截图
社区相关项目列表请参考 Nautobot Wiki,包括第三方插件、部署工具、集成方案等。
manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务