NetBox Docker 全功能部署方案(Ubuntu 22.04 + Docker)
环境准备
 - 检查操作系统版本: 
- 本方案使用 Ubuntu 22.04,并在 VMware 虚拟机中运行。通过以下命令检查系统版本: 
lsb_release -a - 如果未安装 Ubuntu 22.04,请下载并安装一个全新的系统。
 
 - 本方案使用 Ubuntu 22.04,并在 VMware 虚拟机中运行。通过以下命令检查系统版本: 
 - 更新系统软件源: 
- 更新软件包列表并安装最新软件: 
sudo apt-get update sudo apt-get upgrade -y 
 - 更新软件包列表并安装最新软件: 
 
安装 Docker 和 Docker Compose
- 安装必备工具: 
sudo apt-get install -y ca-certificates curl gnupg lsb-release - 添加 Docker 官方 GPG 密钥和仓库: 
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null sudo apt-get update - 安装 Docker Engine: 
sudo apt-get install -y docker-ce docker-ce-cli containerd.io- 验证 Docker 安装: 
docker --version 
 - 验证 Docker 安装: 
 - 配置 Docker 守护进程: 
- 创建或编辑 Docker 守护进程配置文件 /etc/docker/daemon.json: 
sudo mkdir -p /etc/docker sudo tee /etc/docker/daemon.json <<EOF {"dns": ["114.114.114.114", "8.8.8.8"],"registry-mirrors": ["https://mirror.gcr.io"],"max-concurrent-downloads": 10,"max-download-attempts": 3 } EOF - 重新加载 Docker 服务以应用配置: 
sudo systemctl daemon-reload sudo systemctl restart docker - 验证 Docker 服务状态: 
systemctl status docker 
 - 创建或编辑 Docker 守护进程配置文件 /etc/docker/daemon.json: 
 - 安装 Docker Compose(官方插件版): 
sudo apt-get install -y docker-compose-plugin- 验证 Docker Compose 安装: 
docker compose version 
 - 验证 Docker Compose 安装: 
 
克隆 NetBox Docker 仓库并配置
- 创建项目目录并克隆源码: 
mkdir -p ~/projects && cd ~/projects git clone -b release https://github.com/netbox-community/netbox-docker.git cd netbox-docker - 配置 Docker Compose 覆盖文件: 
- NetBox 默认使用 8080 端口,我们将其映射到宿主机的 8000 端口。在项目根目录创建 docker-compose.override.yml 文件: 
tee docker-compose.override.yml <<EOF services:netbox:ports:- "8000:8080" EOF - 这会将容器的 8080 端口映射到宿主机的 8000 端口。如果端口被占用,可更改为其他端口。
 
 - NetBox 默认使用 8080 端口,我们将其映射到宿主机的 8000 端口。在项目根目录创建 docker-compose.override.yml 文件: 
 - 指定稳定版本镜像(可选): 
- 默认配置拉取最新版本镜像。如需使用稳定版本(例如 NetBox v4.2 对应 Docker 版本 3.2.1),创建 .env 文件: 
echo "VERSION=v4.2-3.2.1" > .env 
 - 默认配置拉取最新版本镜像。如需使用稳定版本(例如 NetBox v4.2 对应 Docker 版本 3.2.1),创建 .env 文件: 
 
拉取镜像并启动容器
- 拉取 Docker 镜像: 
- 在 netbox-docker 目录下运行: 
docker compose pull 
 - 在 netbox-docker 目录下运行: 
 - 启动 NetBox 服务: 
- 启动容器: 
docker compose up -d - 检查容器状态: 
docker compose ps - 等待几分钟,直到所有容器状态变为 healthy。可通过以下命令查看容器日志: 
docker compose logs netbox 
 - 启动容器: 
 
创建管理员用户并访问 Web UI
- 创建超级管理员账户: 
- NetBox 启动后,首次登录需创建管理员账户: 
docker compose exec netbox /opt/netbox/netbox/manage.py createsuperuser - 根据提示输入用户名、电子邮件和密码,完成后显示 Superuser created successfully。
 
 - NetBox 启动后,首次登录需创建管理员账户: 
 - 访问 NetBox Web 界面: 
- 获取虚拟机 IP 地址: 
hostname -I - 假设虚拟机 IP 为 192.168.1.100,通过浏览器访问: 
http://192.168.1.100:8000/ - 使用刚创建的管理员账户登录,进入 NetBox 仪表盘。
 
 - 获取虚拟机 IP 地址: 
 - 功能验证: 
- 登录后,验证核心功能(IPAM、DCIM、设备管理等)是否正常。尝试添加测试数据(如新设备或网络段),确认 API 和权限系统正常工作。
 
 


