docker - 如何使用本地代码更改和我自己的 swagger.json 运行 swagger-ui?

标签 docker npm swagger swagger-ui

https://github.com/swagger-api/swagger-ui 上的自述文件指定 Swagger-UI 可以像这样使用您自己的文件运行

docker run -p 80:8080 -e SWAGGER_JSON=/foo/swagger.json -v /bar:/foo swaggerapi/swagger-ui

如果我把它翻译成这样的话我会用

docker build . -t swagger-ui-local && \
  docker run -p 80:8080 -e SWAGGER_JSON=/foo/my-file.json -v $PWD:/foo swagger-ui-local

但是,这会忽略我的本地更改。

我可以运行我的本地更改

npm run dev

但我不知道如何让这个开发服务器运行除了 Petstore 示例之外的任何东西。

谁能帮我将两者结合起来,这样我就可以运行 swagger-ui 并更改本地代码和我自己的 swagger.json?

最佳答案

确保您正在卷安装正确的本地目录。

在本地,我在 $PWD/src/app/swagger/swagger.yaml 中有我的 swagger 配置。运行以下工作正常:

docker run -p 80:8080 -e SWAGGER_JSON=/tmp/swagger.yaml -v `pwd`/src/app/swagger:/tmp swaggerapi/swagger-ui

只需刷新 Swagger-UI 页面或单击标题中的“探索”按钮即可刷新我的 YAML 文件中的数据。

您也可以指定 BASE_URL 摘自 swagger-installation

docker run -p 80:8080 -e BASE_URL=/swagger -e SWAGGER_JSON=/foo/swagger.json -v/bar:/foo swaggerapi/swagger-ui

关于docker - 如何使用本地代码更改和我自己的 swagger.json 运行 swagger-ui?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46256588/

相关文章:

scala - 调试使用 SBT Native Packager 构建的 Docker 应用程序

Docker compose - 限制互联网访问,仅允许通过代理导出

amazon-s3 - 如何使用 AWS 在 Docker Cloud 中设置链接到 S3 的卷?

npm - 通过 package.json 将视觉样式应用到在 npm 脚本中使用的 echo 命令

batch-file - npm run build with .bat 防止窗口关闭

python - Docker:导入错误:没有名为 pandas 的模块

git - 参数列表太长 - lint-staged -> tslint

java - 包 io.swagger.v3.oas.annotations.media 不存在 (Swagger Codegen)

swagger - 如何从 OpenAPI 3.0 生成 PDF 或标记?

swagger - 获取 "Cannot read property ' 参数为 null”的 swagger 规范