Docker部署SchemaSpy文档站点遇问题:参数失效+无法访问
问题原因分析
1. 无法访问站点的原因
- SchemaSpy官方镜像本身不包含Web服务器,你配置的
ports: "5558:80"无效——容器内80端口没有任何服务运行,自然无法通过该端口访问文档。 - 即便SchemaSpy成功生成文档,输出目录
/output(已挂载到宿主机/SchemaSpy/output)也未被任何Web服务托管,直接访问IP+端口找不到对应资源。 depends_on: ["mysql"]仅能保证MySQL容器先启动,无法确保MySQL服务完全就绪(如初始化完成、可接受连接)。若SchemaSpy启动时MySQL未准备好,会导致文档生成失败,输出目录为空,后续即便搭建Web服务也无内容可访问。
2. 参数-nohtmlimages和-nodot被忽略的原因
- 你同时混用环境变量和自定义command参数,两者存在冲突。SchemaSpy镜像默认启动逻辑优先处理环境变量,再叠加command参数,导致部分参数被覆盖或解析异常。
- 最新版SchemaSpy的参数命名已变更:原
-nohtmlimages需改为--no-html-images,原-nodot需改为--no-dot,旧参数名称已被废弃,容器会忽略这些无效参数,继续尝试生成图表。 - 命令中
-p pass111写法错误,正确的密码传递方式应为-ppass111(无空格)或-p=pass111,空格会导致参数解析错误,进而影响后续参数的识别。
内容的提问来源于stack exchange,提问作者SAM
相关产品推荐
相关产品推荐

