当前位置: 首页 > article >正文

别再手动汉化了!用Docker Compose持久化配置Greenbone GVM中文界面(附yml文件修改)

持久化配置Greenbone GVM中文界面的Docker Compose实战指南对于安全工程师和运维人员来说Greenbone Vulnerability ManagementGVM是进行漏洞扫描的利器。但每次重启容器后都需要重新配置中文界面这无疑增加了维护成本。本文将深入探讨如何通过Docker Compose的持久化配置一劳永逸地解决GVM中文界面问题。1. 理解GVM语言包工作机制GVM的web界面语言包存储在容器内的/usr/local/share/gvm/gsad/web/locales目录中默认加载的是gsa-en.json英语语言包。要实现中文界面通常需要手动替换这个文件。关键目录结构/usr/local/share/gvm/gsad/web/locales/ ├── gsa-ar.json ├── gsa-de.json ├── gsa-en.json ├── gsa-zh_CN.json # 简体中文语言包 └── gsa-zh_TW.json # 繁体中文语言包临时修改方法虽然简单docker exec -it gsa-container /bin/sh cd /usr/local/share/gvm/gsad/web/locales cp gsa-zh_CN.json gsa-en.json但这种方法存在明显缺陷容器重启后修改会丢失在多节点部署时需要重复操作不利于版本控制和追踪变更2. 设计持久化解决方案要实现真正的持久化我们需要利用Docker的数据卷机制。具体思路是将语言包目录挂载到宿主机这样无论容器如何重启修改都会保留。技术方案对比方法持久性复杂度适用场景容器内直接修改低简单临时测试数据卷挂载高中等生产环境自定义镜像最高复杂企业级部署对于大多数场景数据卷挂载是最佳平衡点。它不需要构建新镜像又能保证配置持久化。3. 修改docker-compose.yml实现持久化找到GVM的docker-compose.yml文件通常在~/greenbone-community-container目录下。我们需要修改gsa服务的配置添加数据卷挂载。原始配置片段gsa: image: greenbone/gsa:stable ports: - 9392:80修改后的配置gsa: image: greenbone/gsa:stable ports: - 9392:80 volumes: - ./gsa-locales:/usr/local/share/gvm/gsad/web/locales关键修改点添加了volumes配置项将容器内的locales目录映射到宿主机的./gsa-locales目录使用相对路径便于项目迁移4. 完整实施步骤4.1 准备语言包目录首先在宿主机创建目录并复制原始语言包mkdir -p ~/greenbone-community-container/gsa-locales docker cp gsa-container:/usr/local/share/gvm/gsad/web/locales/. ~/greenbone-community-container/gsa-locales/4.2 修改语言包替换中文语言包为默认加载文件cd ~/greenbone-community-container/gsa-locales cp gsa-zh_CN.json gsa-en.json4.3 应用配置变更重新启动服务使配置生效docker compose -f ~/greenbone-community-container/docker-compose.yml down docker compose -f ~/greenbone-community-container/docker-compose.yml up -d4.4 验证配置检查挂载是否成功docker exec -it gsa-container ls -l /usr/local/share/gvm/gsad/web/locales/应该能看到文件来自宿主机目录而非容器内部。5. 高级配置与优化5.1 保留原始语言包为了灵活性建议保留原始英文包通过修改GVM配置而非替换文件的方式实现中文化在宿主机创建自定义配置文件mkdir -p ~/greenbone-community-container/gsa-config echo DEFAULT_LANGUAGEzh_CN ~/greenbone-community-container/gsa-config/gsad.conf修改docker-compose.yml添加配置挂载gsa: volumes: - ./gsa-locales:/usr/local/share/gvm/gsad/web/locales - ./gsa-config:/etc/gvm/gsad5.2 多语言支持方案如果需要支持多语言切换可以配置Nginx作为反向代理根据用户请求头决定语言版本server { listen 9392; location / { proxy_pass http://gsa:80; proxy_set_header Accept-Language $http_accept_language; } }然后在GSA配置中启用语言自动检测功能。5.3 版本控制集成将语言包和配置纳入版本控制cd ~/greenbone-community-container git init git add gsa-locales/ gsa-config/ docker-compose.yml git commit -m 初始化GVM中文配置这样每次修改都有记录便于团队协作和问题排查。6. 常见问题排查问题1修改后界面仍显示英文解决方案确认容器已重启检查挂载是否生效docker inspect gsa-container | grep Mounts清除浏览器缓存问题2界面部分翻译缺失解决方案检查语言包完整性确认使用的是最新版GVM考虑补充缺失的翻译条目问题3性能下降解决方案检查宿主机IO性能考虑使用更快的存储介质调整Docker存储驱动7. 生产环境最佳实践在企业环境中建议采用以下增强措施定期备份语言包tar -czvf gsa-locales-backup-$(date %Y%m%d).tar.gz ~/greenbone-community-container/gsa-locales监控配置变更inotifywait -m ~/greenbone-community-container/gsa-locales -e modify自动化测试编写脚本验证界面语言是否正确加载文档记录维护团队内部文档记录所有自定义配置在实际项目中这种持久化配置方法不仅适用于语言包还可以推广到GVM的其他配置项如扫描策略、报告模板等。通过合理设计Docker Compose文件可以构建出既灵活又稳定的漏洞管理平台。

相关文章:

别再手动汉化了!用Docker Compose持久化配置Greenbone GVM中文界面(附yml文件修改)

持久化配置Greenbone GVM中文界面的Docker Compose实战指南 对于安全工程师和运维人员来说,Greenbone Vulnerability Management(GVM)是进行漏洞扫描的利器。但每次重启容器后都需要重新配置中文界面,这无疑增加了维护成本。本文…...

vLLM-v0.17.1与卷积神经网络(CNN)结合:多模态理解新思路

vLLM-v0.17.1与卷积神经网络(CNN)结合:多模态理解新思路 1. 多模态AI的行业痛点与解决方案 计算机视觉和自然语言处理长期作为AI两大独立分支发展,但在实际业务场景中,图像与文本的协同理解需求日益凸显。传统方案通…...

GPU友好型部署!Nanbeige 4.1-3B Streamlit WebUI显存优化实测教程

GPU友好型部署!Nanbeige 4.1-3B Streamlit WebUI显存优化实测教程 想在自己的电脑上跑一个好看又好用的AI对话应用,是不是总被复杂的部署步骤和巨大的显存占用劝退?今天,我就带你实测一个专为Nanbeige 4.1-3B模型打造的Streamlit…...

AI人脸隐私卫士企业应用:内部会议纪要人脸自动打码方案

AI人脸隐私卫士企业应用:内部会议纪要人脸自动打码方案 1. 企业会议场景的隐私保护挑战 在现代企业运营中,内部会议纪要的数字化管理已成为常态。然而,当这些包含参会人员影像的资料需要共享或存档时,如何平衡信息传递与隐私保护…...

PADS集成软件——HyperLynx

HyperLynx Thermal 是 PADS 软件集成的电路板热分析工具,专门用来在设计阶段模拟和预测 PCB 的温度分布,提前发现过热风险。简单来说,当完成 PCB 布局布线后,可以用它来回答一个重要问题:“这块板子通电后,…...

达梦数据库-归档日志文件-记录总结

达梦数据库-归档日志文件-记录总结DM数据库可以运行在归档模式或非归档模式下。如果是归档模式,联机日志文件中的内容保存到硬盘中,形成归档日志文件;如果是非归档模式,则不会形成归档日志。归档日志文件以归档时间命名&#xff0…...

springboot-vue+nodejs的电子产品商城销售平台

目录技术栈选择系统架构设计核心功能模块开发环境搭建数据库设计接口规范定义安全防护措施性能优化策略测试与部署项目技术支持源码获取详细视频演示 :文章底部获取博主联系方式!同行可合作技术栈选择 后端采用Spring Boot框架,提供RESTful …...

新手必看|SRC平台漏洞挖掘全攻略(2026干货版):平台详解+规则必记+实操步骤

新手必看|SRC平台漏洞挖掘全攻略(2026 干货版):平台详解规则必记实操步骤 对于网络安全新手、计算机相关专业学生,以及想转型安全领域的从业者而言,SRC平台是合法练手、积累实战经验、衔接职场的核心载体。…...

猫抓资源嗅探扩展:5大核心功能彻底解析网络媒体捕获技术

猫抓资源嗅探扩展:5大核心功能彻底解析网络媒体捕获技术 【免费下载链接】cat-catch 猫抓 chrome资源嗅探扩展 项目地址: https://gitcode.com/GitHub_Trending/ca/cat-catch 猫抓(Cat-Catch)是一款开源免费的浏览器资源嗅探扩展&…...

从‘知识冲突’到‘对齐’:图解ProGrad如何让CLIP微调既专又通

ProGrad:用向量几何重新思考多模态模型的微调艺术 想象一下,你正在训练一位精通多国语言的老教授学习一门新方言。如果完全放任他自由发挥,可能会丢失原有的语言体系;如果限制太多,又无法适应新语境。这正是CLIP等预训…...

数据库工具效率提升指南:三步掌握开源数据库管理新范式

数据库工具效率提升指南:三步掌握开源数据库管理新范式 【免费下载链接】dblab The database client every command line junkie deserves. 项目地址: https://gitcode.com/gh_mirrors/db/dblab 在数据驱动开发的时代,开源数据库管理工具已成为开…...

DEFOM-Stereo vs RAFT-Stereo:双目匹配领域的新旧王者对比实测(附KITTI数据集结果)

DEFOM-Stereo与RAFT-Stereo:双目视觉技术的实战性能解析 在计算机视觉领域,双目立体匹配技术一直是实现三维场景重建和环境感知的核心方法之一。近年来,随着深度学习技术的快速发展,RAFT-Stereo等基于神经网络的双目匹配算法已经展…...

跨平台技术突破:OptiScaler如何让AI超分技术普适化

跨平台技术突破:OptiScaler如何让AI超分技术普适化 【免费下载链接】OptiScaler DLSS replacement for AMD/Intel/Nvidia cards with multiple upscalers (XeSS/FSR2/DLSS) 项目地址: https://gitcode.com/GitHub_Trending/op/OptiScaler 问题诊断&#xff1…...

基于Whisper-large-v3的语音搜索引擎开发

基于Whisper-large-v3的语音搜索引擎开发 你有没有遇到过这种情况?手头有几百个小时的会议录音、课程录像或者播客音频,想找其中某个人说过的一句话,或者某个特定的知识点,结果只能从头到尾听一遍,费时又费力。或者&a…...

网易云音乐无损解析:5大核心技术构建个人高品质音乐库

网易云音乐无损解析:5大核心技术构建个人高品质音乐库 【免费下载链接】Netease_url 网易云无损解析 项目地址: https://gitcode.com/gh_mirrors/ne/Netease_url 在数字音乐时代,如何突破平台限制,建立个人专属的高品质音乐库&#xf…...

ESP32音频播放终极指南:5步打造专业级音乐播放器

ESP32音频播放终极指南:5步打造专业级音乐播放器 【免费下载链接】ESP32-audioI2S Play mp3 files from SD via I2S 项目地址: https://gitcode.com/gh_mirrors/es/ESP32-audioI2S ESP32-audioI2S是一个功能强大的开源音频库,专为ESP32、ESP32-S3…...

Rockchip Android13 x3588 USB 2.0硬件调试与DTS配置实战

1. RK3588 USB 2.0硬件基础与问题定位 最近在调试x3588开发板的USB 2.0接口时,遇到了设备无法识别的问题。这个问题在嵌入式开发中很常见,但排查过程却需要系统性的思路。先说说RK3588的USB架构特点,这颗芯片的USB控制器设计相当灵活&#xf…...

掌握微信聊天记录永久备份:从数据主权到智能记忆管理

掌握微信聊天记录永久备份:从数据主权到智能记忆管理 【免费下载链接】WeChatMsg 提取微信聊天记录,将其导出成HTML、Word、CSV文档永久保存,对聊天记录进行分析生成年度聊天报告 项目地址: https://gitcode.com/GitHub_Trending/we/WeChat…...

3个ONNX运行时故障的系统性修复方案:ComfyUI DWPose预处理器实战指南

3个ONNX运行时故障的系统性修复方案:ComfyUI DWPose预处理器实战指南 【免费下载链接】comfyui_controlnet_aux 项目地址: https://gitcode.com/gh_mirrors/co/comfyui_controlnet_aux 在ComfyUI工作流中,DWPose预处理器作为姿态估计的核心组件&…...

AI专著撰写新方法:借助工具实现从构思到成书的完美跨越

创新与AI工具助力学术专著写作 创新是学术专著的核心,也是写作过程中最具挑战性的部分。一本合格的专著不应只是对现有研究成果的简单罗列,而需要提出贯穿全书的独到见解、理论框架或研究方法。在浩如烟海的学术文献中,挖掘尚未被探索的研究…...

Betaflight 4.5配置文件升级实战:从STM32H743到AOCODARC H7Dual的硬件适配指南

Betaflight 4.5硬件适配深度解析:从STM32H743到AOCODARC H7Dual的实战迁移指南 穿越机飞控系统的核心在于硬件与软件的完美协同,而Betaflight作为开源飞控领域的标杆,其4.5版本在硬件抽象层进行了重大革新。本文将聚焦STM32H743芯片与AOCODAR…...

保姆级教程:在Ubuntu 20.04上搞定SigmaStar SSC336/SSC338/SSC30K的SDK编译环境(含bash切换和32位库安装)

SigmaStar SSC系列芯片开发环境搭建实战指南 从零开始配置Ubuntu 20.04编译环境 最近在接触SigmaStar SSC336/SSC338/SSC30K系列芯片开发时,发现官方文档对环境配置的描述较为简略,而实际搭建过程中会遇到各种"坑"。本文将结合实战经验&#x…...

代理优先(Agent-First)软件开发全生命周期流程解析

1. 引言:从“手动编码”到“系统导航”的范式转移 在传统的软件工程中,人类工程师是代码的“砖瓦匠”,将大部分认知带宽消耗在每一行代码的编写与微观调试上。然而,OpenAI 最新的实践证明了一种激进的范式转移:在一个为…...

Keil“魔法棒”全解析:从Device到Utilities的配置秘籍

1. 认识Keil的"魔法棒":Options for Target对话框 第一次打开Keil MDK时,工具栏上那个带着星星的魔法棒图标总是特别引人注目。这个被开发者亲切称为"魔法棒"的按钮,实际上是整个开发环境中最强大的配置中心——Options …...

Kubernetes资源监控与告警:从指标到行动的完整闭环

Kubernetes资源监控与告警:从指标到行动的完整闭环没有监控的集群就是黑盒,没有告警的监控就是摆设。监控体系架构 一个完整的K8s监控体系包含三个层次: ┌────────────────────────────────────────…...

从‘找不到设备’到驱动成功:3DSystems Touch HID 在Linux下的连接问题全解析与诊断工具使用

从‘找不到设备’到驱动成功:3DSystems Touch HID 在Linux下的连接问题全解析与诊断工具使用 当你在Ubuntu系统中第一次连接3DSystems Touch HID设备时,可能会遇到各种令人困惑的问题——设备无法识别、动态链接库错误、/dev/ttyACM*设备消失等。这些问…...

从ResNet到mHC:DeepSeek重构残差连接,额外开销仅6.7%,附复现代码

2015年,由微软亚洲研究院的何恺明团队提出ResNet,ResNet引入残差连接的概念,用以解决深层神经网络训练中的梯度消失/爆炸和网络退化问题,使得训练极深的网络成为可能。 ��1��&#x…...

效率飙升秘籍:用快马生成全自动opencode安装与配置工具

最近在折腾opencode的安装配置,发现手动操作实在太费时间了——要查文档、装依赖、配环境变量,一不小心就踩坑。后来发现用InsCode(快马)平台可以快速生成自动化脚本,效率直接翻倍。今天就把这个"偷懒"方案分享给大家。 环境预检查…...

ANIMATEDIFF PRO效果展示:森林晨雾中飘落树叶+光线穿透动态GIF集

ANIMATEDIFF PRO效果展示:森林晨雾中飘落树叶光线穿透动态GIF集 1. 引言:当AI遇见电影级动态美学 想象一下,你脑海中有一个绝美的画面:清晨的森林,薄雾缭绕,阳光透过层层叠叠的树叶,形成一道道…...

Display Driver Uninstaller深度使用指南:从问题诊断到系统优化

Display Driver Uninstaller深度使用指南:从问题诊断到系统优化 【免费下载链接】display-drivers-uninstaller Display Driver Uninstaller (DDU) a driver removal utility / cleaner utility 项目地址: https://gitcode.com/gh_mirrors/di/display-drivers-uni…...