Docker部署hyperglass完全指南:环境变量与反向代理设置

📅 2026/7/15 18:25:08
Docker部署hyperglass完全指南:环境变量与反向代理设置
Docker部署hyperglass完全指南环境变量与反向代理设置【免费下载链接】hyperglasshyperglass is the network looking glass that tries to make the internet better.项目地址: https://gitcode.com/gh_mirrors/hy/hyperglass想要快速部署一个功能强大的网络Looking Glass工具吗hyperglass就是你的完美选择这个开源网络Looking Glass工具旨在让网络管理员轻松实现网络诊断和监控功能。通过Docker部署hyperglass你可以在几分钟内搭建一个专业的网络诊断平台无需复杂的安装步骤。本指南将详细介绍如何使用Docker部署hyperglass并深入讲解关键环境变量的配置以及反向代理的设置方法帮助你快速上手这个强大的网络工具。为什么选择hyperglasshyperglass是一个现代化的网络Looking Glass工具它支持多种网络设备的查询功能包括BGP路由查询、BGP社区查询、BGP AS路径查询、Ping和Traceroute等。通过简洁的Web界面用户可以轻松地对网络设备进行诊断和监控。使用Docker部署hyperglass有以下几个优势快速部署几分钟内即可完成安装和配置环境隔离避免依赖冲突保持系统清洁易于维护升级和回滚操作简单跨平台支持在任何支持Docker的系统上运行Docker部署hyperglass的完整步骤1. 准备工作与环境要求在开始部署之前确保你的系统满足以下要求已安装Docker和Docker Compose至少2GB可用内存网络访问权限用于拉取镜像2. 克隆项目并配置目录首先克隆hyperglass项目到本地mkdir /etc/hyperglass cd /opt git clone https://gitcode.com/gh_mirrors/hy/hyperglass.git --depth1 cd /opt/hyperglass3. 快速启动体验如果你想快速体验hyperglass的功能可以使用示例配置启动cp /opt/hyperglass/.samples/sample_devices.yaml /etc/hyperglass/devices.yaml cd /opt/hyperglass docker compose up启动后访问 http://localhost:8001 即可看到hyperglass的界面。关键环境变量详解hyperglass提供了多个环境变量用于自定义配置这些变量可以在Docker容器启动时设置或者在${HYPERGLASS_APP_PATH}/hyperglass.env文件中配置。基础配置环境变量环境变量类型默认值说明HYPERGLASS_APP_PATH字符串/etc/hyperglasshyperglass配置文件和静态文件的存储目录HYPERGLASS_HOST字符串0.0.0.0hyperglass监听的IP地址HYPERGLASS_PORT数字8001hyperglass监听的端口号HYPERGLASS_DEBUG布尔值false是否启用调试模式Redis相关环境变量由于hyperglass依赖Redis进行缓存和状态管理以下是相关的配置环境变量类型默认值说明HYPERGLASS_REDIS_HOST字符串redisRedis服务器的主机名HYPERGLASS_REDIS_PASSWORD字符串-Redis密码如果有HYPERGLASS_REDIS_DB数字1Redis数据库编号HYPERGLASS_REDIS_DSN字符串-Redis连接DSN如果设置会覆盖其他Redis配置高级功能环境变量环境变量类型默认值说明HYPERGLASS_DEV_MODE布尔值false开发模式仅在特定开发场景下使用HYPEGLASS_DISABLE_UI布尔值false是否禁用Web界面仅通过REST API访问HYPERGLASS_CONTAINER布尔值true标识是否在容器中运行HYPERGLASS_CA_CERT字符串-CA证书路径用于HTTPS证书验证Docker Compose配置文件详解hyperglass项目提供了一个完整的compose.yaml文件包含了Redis和hyperglass服务的配置services: redis: image: redis:alpine hyperglass: depends_on: - redis environment: - HYPERGLASS_APP_PATH/etc/hyperglass - HYPERGLASS_HOST${HYPERGLASS_HOST-0.0.0.0} - HYPERGLASS_PORT${HYPERGLASS_PORT-8001} - HYPERGLASS_DEBUG${HYPERGLASS_DEBUG-false} - HYPERGLASS_DEV_MODE${HYPERGLASS_DEV_MODE-false} - HYPERGLASS_REDIS_HOST${HYPERGLASS_REDIS_HOST-redis} - HYPEGLASS_DISABLE_UI${HYPEGLASS_DISABLE_UI-false} - HYPERGLASS_CONTAINER${HYPERGLASS_CONTAINER-true} - HYPERGLASS_ORIGINAL_APP_PATH${HYPERGLASS_APP_PATH} build: . ports: - ${HYPERGLASS_PORT-8001}:${HYPERGLASS_PORT-8001} volumes: - ${HYPERGLASS_APP_PATH-/etc/hyperglass}:/etc/hyperglass反向代理配置指南在生产环境中通常需要通过反向代理来提供HTTPS支持和更好的安全性。hyperglass支持多种反向代理方案包括Caddy和NGINX。使用Caddy作为反向代理Caddy是一个现代化的Web服务器支持自动HTTPS证书管理配置简单安装Caddy按照官方文档安装Caddy配置Caddyfilelg.example.com:443 { tls personexample.com file_server { root /etc/hyperglass/static/ui index /etc/hyperglass/static/ui/index.html } file_server /custom { root /etc/hyperglass/static/custom } file_server /images { root /etc/hyperglass/static/images } reverse_proxy localhost:8001 }应用配置cp /opt/hyperglass/.samples/Caddyfile /etc/caddy/Caddyfile systemctl restart caddy使用NGINX作为反向代理如果你更熟悉NGINX可以使用以下配置复制配置文件cp /opt/hyperglass/.samples/hyperglass.nginx /etc/nginx/sites-available/hyperglass ln -s /etc/nginx/sites-available/hyperglass /etc/nginx/sites-enabled/hyperglass修改NGINX配置server { listen 80; listen [::]:80; server_name lg.example.com; return 301 https://$host$request_uri; } server { listen [::]:443 ssl ipv6onlyon; listen 443 ssl; ssl_certificate path to cert chain; ssl_certificate_key path to key; client_max_body_size 2M; server_name lg.example.com; root /etc/hyperglass/static; location / { try_files $uri $uri/ /ui /ui/$uri 404; index /ui/index.html; } location /openapi.json { try_files $uri proxy_to_app; } location /custom/ { try_files $uri $uri/ /custom; } location /images/ { try_files $uri $uri/ /images; } location /api { try_files $uri proxy_to_app; } location proxy_to_app { proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; proxy_set_header Host $http_host; proxy_redirect off; proxy_pass http://[::1]:8001; } }生产环境部署最佳实践1. 创建systemd服务为了确保hyperglass在系统重启后自动启动可以创建systemd服务cp /opt/hyperglass/.samples/hyperglass-docker.service /etc/hyperglass/hyperglass.service ln -s /etc/hyperglass/hyperglass.service /etc/systemd/system/hyperglass.service systemctl daemon-reload systemctl enable hyperglass systemctl start hyperglass2. 配置设备信息编辑/etc/hyperglass/devices.yaml文件添加你的网络设备信息devices: - name: Core Router address: 192.168.1.1 credential: username: admin password: secure_password platform: cisco_ios attrs: source4: 192.168.1.100 source6: 2001:db8::1003. 安全配置建议使用强密码保护Redis实例配置防火墙规则限制访问hyperglass的IP范围定期更新Docker镜像到最新版本配置日志轮转避免日志文件过大故障排除与常见问题Q1: hyperglass启动失败提示Redis连接错误解决方案确保Redis容器已正确启动并检查HYPERGLASS_REDIS_HOST环境变量设置是否正确。Q2: Web界面无法访问解决方案检查防火墙设置确保端口8001已开放验证hyperglass容器是否正常运行docker ps | grep hyperglass查看容器日志docker logs hyperglass-container-nameQ3: 反向代理配置后出现404错误解决方案检查反向代理配置中的路径映射是否正确确保静态文件路径配置正确。Q4: 设备查询超时或失败解决方案验证设备配置中的IP地址和凭据是否正确检查网络连通性查看hyperglass日志获取详细错误信息总结通过本指南你已经学会了如何使用Docker快速部署hyperglass网络Looking Glass工具。从基础的环境变量配置到生产级的反向代理设置hyperglass提供了灵活的部署选项可以满足不同场景的需求。记住这些关键点Docker是部署hyperglass的推荐方式简单且易于维护合理配置环境变量可以优化hyperglass的性能和功能使用反向代理如Caddy或NGINX可以提供HTTPS支持和更好的安全性定期更新配置文件和Docker镜像可以确保系统安全稳定hyperglass的强大功能结合Docker的便捷部署让网络诊断和监控变得更加简单高效。现在就开始部署你的hyperglass实例享受现代化的网络管理体验吧【免费下载链接】hyperglasshyperglass is the network looking glass that tries to make the internet better.项目地址: https://gitcode.com/gh_mirrors/hy/hyperglass创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考