networktocode/nautobot-dev本镜像为Nautobot的开发构建版本(Development builds),用于提供网络源真相(Network Source of Truth)和自动化平台的开发测试环境。Nautobot是一个开源网络管理工具,旨在帮助网络团队维护网络基础设施的准确记录(源真相),并通过API和插件系统实现自动化工作流。
开发构建版镜像包含Nautobot的最新开发特性,适用于功能验证、插件开发和内部测试,不建议用于生产环境。
从Docker仓库拉取镜像(具体仓库地址需根据实际分发渠道确认,以下为示例):
bashdocker pull nautobot/nautobot:dev # 开发构建版标签通常为"dev"或"latest-dev"
docker run)bashdocker run -d \ --name nautobot-dev \ -p 8080:8080 \ -e NAUTOBOT_DB_HOST=db.example.com \ -e NAUTOBOT_DB_NAME=nautobot_dev \ -e NAUTOBOT_DB_USER=nautobot \ -e NAUTOBOT_DB_PASSWORD=strong_password \ -e NAUTOBOT_SECRET_KEY="your-long-random-secret-key" \ -e NAUTOBOT_DEBUG=True \ -v nautobot_media:/opt/nautobot/media \ -v nautobot_static:/opt/nautobot/static \ nautobot/nautobot:dev
-p 8080:8080:映射容器内Nautobot服务端口(默认8080)到宿主机。-v:挂载卷以持久化媒体文件(media)和静态资源(static)。推荐使用docker-compose管理Nautobot及依赖服务(数据库、Redis),示例配置如下:
docker-compose.ymlyamlversion: '3.8' services: nautobot: image: nautobot/nautobot:dev container_name: nautobot-dev restart: unless-stopped ports: - "8080:8080" environment: - NAUTOBOT_DB_HOST=postgres - NAUTOBOT_DB_NAME=nautobot - NAUTOBOT_DB_USER=nautobot - NAUTOBOT_DB_PASSWORD=nautobot_db_password - NAUTOBOT_DB_PORT=5432 - NAUTOBOT_REDIS_HOST=redis - NAUTOBOT_REDIS_PORT=6379 - NAUTOBOT_SECRET_KEY="your-long-random-secret-key" # 必须手动生成,至少50字符 - NAUTOBOT_DEBUG=True - NAUTOBOT_ALLOWED_HOSTS=localhost,127.0.0.1 volumes: - nautobot_media:/opt/nautobot/media - nautobot_static:/opt/nautobot/static - nautobot_data:/opt/nautobot/data # 存储插件、备份等数据 depends_on: - postgres - redis postgres: image: postgres:14-alpine container_name: nautobot-dev-postgres restart: unless-stopped environment: - POSTGRES_DB=nautobot - POSTGRES_USER=nautobot - POSTGRES_PASSWORD=nautobot_db_password volumes: - postgres_data:/var/lib/postgresql/data redis: image: redis:7-alpine container_name: nautobot-dev-redis restart: unless-stopped volumes: - redis_data:/data volumes: nautobot_media: nautobot_static: nautobot_data: postgres_data: redis_data:
bash# 启动所有服务(后台运行) docker-compose up -d # 查看日志 docker-compose logs -f nautobot # 停止服务(保留数据) docker-compose down
以下为常用环境变量(完整列表见Nautobot官方文档):
| 环境变量名 | 描述 | 默认值 | 开发环境建议 |
|---|---|---|---|
NAUTOBOT_SECRET_KEY | 加密签名密钥(必须手动设置) | 无(必填) | 生成随机字符串(至少50字符) |
NAUTOBOT_DEBUG | 是否启用调试模式 | False | True(开发环境) |
NAUTOBOT_DB_HOST | 数据库主机地址 | localhost | 数据库服务容器名(如postgres) |
NAUTOBOT_DB_NAME | 数据库名称 | nautobot | nautobot_dev |
NAUTOBOT_DB_USER | 数据库用户名 | nautobot | - |
NAUTOBOT_DB_PASSWORD | 数据库密码 | 无(必填) | 强密码(仅开发环境可简化) |
NAUTOBOT_REDIS_HOST | Redis主机地址 | localhost | Redis服务容器名(如redis) |
NAUTOBOT_ALLOWED_HOSTS | 允许访问的主机名列表(逗号分隔) | localhost,127.0.0.1 | 添加宿主机IP或域名(如192.168.1.100) |
NAUTOBOT_DEV_MODE | 是否启用开发模式(热重载、详细日志) | False | True |
通过卷(Volume)挂载持久化关键数据,避免容器重建后数据丢失:
/opt/nautobot/media:用户上传的媒体文件(如设备图片)。/opt/nautobot/static:静态资源(CSS/JS,由collectstatic生成)。/opt/nautobot/data:插件、备份、自定义配置文件等。8080端口暴露Web服务,可通过-p <宿主机端口>:8080修改。docker-compose,服务间通过默认桥接网络通信(如Nautobot通过postgres主机名访问数据库)。0.0.0.0:8080允许局域网访问(需配置NAUTOBOT_ALLOWED_HOSTS)。NAUTOBOT_SECRET_KEY需保密,不同环境使用不同密钥。docker pull nautobot/nautobot:dev。manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务