尧图网络 高端网站定制 · 原创设计
免费咨询热线
400-888-6620
免费获取方案
Swagger UI Docker 部署:3 种端口配置写法,解决容器启动后的端口冲突
Swagger UI Docker 部署3 种端口配置写法解决容器启动后的端口冲突【免费下载链接】swagger-uiSwagger UI is a collection of HTML, JavaScript, and CSS assets that dynamically generate beautiful documentation from a Swagger-compliant API.项目地址: https://gitcode.com/GitHub_Trending/sw/swagger-uiSwagger UI 是一组由 HTML、JavaScript 和 CSS 资产构成的工具能从符合 Swagger 规范的 API 动态生成可交互的文档。官方 Docker 镜像本质是 nginx 容器内部监听PORT环境变量指定的端口默认 8080。本文解决的是docker run之后访问不到页面、宿主机 80 或 8080 端口被占用时如何用 3 种端口写法把 Swagger UI Docker 部署跑通。先跑起来一条命令看到文档界面最快的一条命令同端口映射直接启动docker run -d -p 8080:8080 docker.swagger.io/swaggerapi/swagger-ui前提只有一条本机装了 Docker 且能拉取docker.swagger.io的镜像。-p左边的 8080 是宿主机端口右边的 8080 是容器内端口必须和镜像实际监听的端口一致——镜像在 Dockerfile 中通过ENV PORT8080和EXPOSE 8080固定了默认值。预期效果浏览器访问http://localhost:8080能看到加载了 Petstore 示例的文档页面。冲突从哪来3 个高频原因宿主机端口已被其他进程占用。现象是容器起来了但浏览器访问宿主机端口报Connection refused或超时也可能是docker run直接报port is already allocated。验证命令lsof -i :8080 # 或 netstat -tuln | grep 8080有输出说明该端口已被占用需要换端口或停掉占用进程。把宿主机端口当成了容器内端口。现象是docker run -p 80:9090 ...启动成功但localhost:80打不开。原因是-p 宿主机:容器的右侧必须是容器实际监听的端口而你没设PORT时它仍是 80809090 上根本没有进程。对照docker ps的 Ports 列如果显示0.0.0.0:80-9090/tcp而访问不通基本就是这个原因。端口映射本身没生效。现象是容器状态Up但localhost无法访问。用docker ps看 Ports 列空值或只列了 8080 而没有映射关系说明-p没写对或被 Docker 默认网络拦截。此时先执行docker logs 容器名排除 nginx 启动阶段模板渲染、gzip 压缩的报错其他少见情况见文末的 docs/usage/installation.md。改动最小换宿主机映射端口不想动占用 8080 的进程就把宿主机一侧换掉容器内保持 8080 不动docker run -d -p 8081:8080 docker.swagger.io/swaggerapi/swagger-ui适用于临时排查或本机端口紧张的场景之后访问http://localhost:8081。这是影响面最小的一种写法不涉及镜像内任何配置。需要占用 80 端口用 PORT 改容器内监听镜像里的 nginx 模板 docker/default.conf.template 只有一处决定监听位置listen $PORT;。入口脚本 docker/docker-entrypoint.d/40-swagger-ui.sh 启动时渲染该模板所以把PORT设成 80、再做 80:80 映射即可docker run -d -p 80:80 -e PORT80 docker.swagger.io/swaggerapi/swagger-ui适用于需要以默认端口对外暴露、或前面还有反向代理的场景。注意此时-p右侧也要写成 80两侧必须同时改。长期部署docker-compose 固定端口映射把端口配置交给文件管理避免每次手敲-p出错services: swagger-ui: image: docker.swagger.io/swaggerapi/swagger-ui ports: - 8081:8080执行docker compose up -d启动。适用于团队共用环境或需要反复启停的场景端口冲突排查时改一处即可。两个容易和端口混淆的配置SWAGGER_JSON与SWAGGER_JSON_URL决定文档加载自哪里。挂载本地文件时用-e SWAGGER_JSON/foo/swagger.json -v 你的本地路径:/foo指向远程 URL 时只设SWAGGER_JSON_URL。文档地址不对会表现为端口通了但页面 404容易误判成端口问题。BASE_URL只改路径前缀例如-e BASE_URL/swagger后文档挂在/swagger下不改变监听端口与PORT是正交的两个变量。PORT_IPV6与EMBEDDING前者让 nginx 额外监听[::]:端口默认关闭后者控制是否允许 iframe 嵌入页面都与 IPv4 端口冲突无关排查时不必优先考虑。端口冲突的根源只有两类宿主机端口被占或-p两侧与容器实际监听端口不匹配。先lsof -i :端口确认占用再用PORT对齐容器侧即可。完整的镜像环境变量说明在 Dockerfile 的ENV段和 docs/usage/installation.md 的 Docker 小节下一步建议把常用参数固化进 compose 文件再交给团队使用。【免费下载链接】swagger-uiSwagger UI is a collection of HTML, JavaScript, and CSS assets that dynamically generate beautiful documentation from a Swagger-compliant API.项目地址: https://gitcode.com/GitHub_Trending/sw/swagger-ui创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
RELATED

相关推荐

职业POV怎么学才对?以雷兹在霓虹町的走位与决策拆解为例

职业POV怎么学才对?以雷兹在霓虹町的走位与决策拆解为例

如果你和我一样,曾经因为一段标题很长、关键词很密的 POV 视频点进去,比如“NRG s0m 超高熟练度 灵活走位 霓虹町 Split 雷兹 Raze 无畏契约职业选手第一视角解析 POV”,大概会经历两种完全不同的观看状态。第一种状态是拉进度条。只看他在哪…

📅 2026/9/28 2:43:09
空调省电技术深度解析:从APF能效到双转子压缩机与电子膨胀阀

空调省电技术深度解析:从APF能效到双转子压缩机与电子膨胀阀

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

📅 2026/10/6 4:54:10
从吃播到ASMR:把脆壳冰淇淋蛋糕做成可复制的声音工作流

从吃播到ASMR:把脆壳冰淇淋蛋糕做成可复制的声音工作流

看到“Jane ASMR MAGIC SHELL CHOCOLATE ICE CREAM CAKE EATING”这个标题,如果只把它当成一条普通吃播,那可能错过了最核心的信息。把画面静音,你大概率只会觉得这是一块淋了巧克力酱的冰淇淋蛋糕;把声音打开再看几秒&#xff0c…

📅 2026/10/5 21:04:03
MORE NEWS

更多资讯

📰

JDK 1.8老项目文档处理:Aspose三件套集成与避坑指南

简介:这份资源面向需要在 Java 项目中实现 Office 文档格式转换的开发者,尤其适合仍在使用 JDK 1.8 环境、希望绕开复杂配置直接完成 Word、Excel、PPT 转 PDF 的初中级工程师。包内共 7 个文件,以 3 个 jar 包为核心,分别对应 as…

📰

招聘文案怎么写才有效?从标题设计到效果复盘的完整指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

📰

32位FFmpeg 6.0.1下载与编译:PE验证与MSYS2构建指南

简介:这是基于微软VS2015的Win32环境编译生成的FFmpeg 6.0.1完整开发资源包,面向需要在32位Windows下进行音视频处理或二次开发的工程师与学习者。包内包含运行时动态库、配套导入库、头文件以及常用命令行工具,可直接集成到VS工程中调用&…

📰

认知计算在银行业的落地指南:从能力分层到场景优先级

简介:面向银行业数字化、智能风控与合规管理领域的从业者,这份PDF以“认知计算技术在银行行业的应用”为主题,聚焦IBM Watson及IBM中国研究院的落地实践,是一份兼顾技术原理与业务场景的解决方案型资料。内容重点覆盖Watson在客户…

📰

IndexedDB:前端大数据存储与离线应用开发指南

1. 初识IndexedDB:前端存储的终极方案 第一次接触IndexedDB是在开发一个数据可视化大屏项目时遇到的痛点。当时需要在浏览器端缓存超过50MB的历史数据,localStorage的5MB限制直接让页面崩溃,而服务端频繁请求又导致性能瓶颈。经过技术调研&am…

📰

华为云一键部署OpenClaw AI助手全攻略

1. OpenClaw与华为云一键部署方案概述 OpenClaw(原名Clawdbot)作为一款开源自托管的AI超级助手,正在成为2026年企业级和个人用户部署智能体的首选方案。这款工具最吸引人的特性在于其主动服务能力——它能像真人助理一样主动推送会议提醒、天…

TODAY

今日更新

THIS WEEK

本周精选

THIS MONTH

本月热门

读完文章,想聊聊您的网站?

告诉我们您的行业与需求,资深顾问一对一梳理方案与报价,全程免费。

📞 💬