icinga/icingaweb2该镜像将Icinga Web 2集成到Docker环境中,提供监控系统的Web界面。Icinga Web 2是开源监控系统的Web前端,用于可视化和管理监控数据。通过该镜像可快速部署Icinga Web 2,支持多种配置方式,适用于Docker环境下的监控系统Web界面搭建。
/data目录,保存配置文件及数据X-Remote-User头传递用户名适用于Docker环境下部署Icinga监控系统的Web界面,可用于开发、测试及生产环境,满足监控数据可视化、告警管理及系统配置需求。
容器默认监听8080端口,需挂载数据卷持久化配置。以下是完整部署命令示例:
bashdocker run --rm -d \ -p 8080:8080 \ -v icingaweb:/data \ -e icingaweb.enabledModules=icingadb \ -e icingaweb.passwords.icingaweb2.icingaadmin=*** \ -e icingaweb.authentication.icingaweb2.backend=db \ -e icingaweb.authentication.icingaweb2.resource=icingaweb_db \ -e icingaweb.config.global.config_backend=db \ -e icingaweb.config.global.config_resource=icingaweb_db \ -e icingaweb.config.logging.log=php \ -e icingaweb.groups.icingaweb2.backend=db \ -e icingaweb.groups.icingaweb2.resource=icingaweb_db \ -e icingaweb.modules.icingadb.config.icingadb.resource=icingadb \ -e icingaweb.modules.icingadb.redis.redis1.host=2001:db8::192.0.2.18 \ -e icingaweb.modules.icingadb.redis.redis1.port=6379 \ -e icingaweb.modules.icingadb.commandtransports.icinga2.transport=api \ -e icingaweb.modules.icingadb.commandtransports.icinga2.host=2001:db8::192.0.2.9 \ -e icingaweb.modules.icingadb.commandtransports.icinga2.username=root \ -e icingaweb.modules.icingadb.commandtransports.icinga2.password=*** \ -e icingaweb.resources.icingaweb_db.type=db \ -e icingaweb.resources.icingaweb_db.db=mysql \ -e icingaweb.resources.icingaweb_db.host=2001:db8::192.0.2.13 \ -e icingaweb.resources.icingaweb_db.dbname=icingaweb \ -e icingaweb.resources.icingaweb_db.username=icingaweb \ -e icingaweb.resources.icingaweb_db.password=*** \ -e icingaweb.resources.icingaweb_db.charset=utf8mb4 \ -e icingaweb.resources.icingadb.type=db \ -e icingaweb.resources.icingadb.db=mysql \ -e icingaweb.resources.icingadb.host=2001:db8::192.0.2.113 \ -e icingaweb.resources.icingadb.dbname=icingadb \ -e icingaweb.resources.icingadb.username=icingaweb \ -e icingaweb.resources.icingadb.password=*** \ -e icingaweb.resources.icingadb.charset=utf8mb4 \ -e icingaweb.roles.Administrators.users=icingaadmin \ -e icingaweb.roles.Administrators.permissions='*' \ -e icingaweb.roles.Administrators.groups=Administrators \ icinga/icingaweb2
启动容器后访问http://localhost:8080,通过Web界面向导配置。生成设置令牌命令:
bashdocker run --rm -v icingaweb:/data icinga/icingaweb2 icingacli setup token create
将配置文件放置于/data/etc/icingaweb2目录,容器直接使用该目录下的配置。配置文件结构参考Icinga Web 2配置文档。
环境变量支持以下功能:
启用模块
bash-e icingaweb.enabledModules=icingadb,monitoring # 启用icingadb和monitoring模块
用户密码设置
格式:icingaweb.passwords.<backend>.<user>=<password>
示例:-e icingaweb.passwords.icingaweb2.user1=pass123
作用:在认证后端<backend>中创建用户<user>,密码为<password>
INI配置文件生成
格式:icingaweb.<dir>.<subdir>.<file>.<section>.<option>=<value>
生成文件路径:/data/etc/icingaweb2/<dir>/<subdir>/<file>.ini
文件内容:
ini[section] option = value
示例:-e icingaweb.config.global.config_backend=db生成/data/etc/icingaweb2/config/global.ini:
ini[global] config_backend = db
当使用外部认证后端时,需设置:
bash-e icingaweb.authentication.autologin.backend=external
并通过X-Remote-User HTTP头传递用户名。
如需自行构建镜像,执行以下命令:
bashgit clone [***] # 可选:检出特定版本 # pushd icingaweb2 && git checkout v2.9.0 && popd ./build.bash ./icingaweb2
manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务