本站支持搜索的镜像仓库:Docker Hub、gcr.io、ghcr.io、quay.io、k8s.gcr.io、registry.gcr.io、elastic.co、mcr.microsoft.com
注意: 这是 krakend 镜像 的 arm64v8 架构专用仓库。更多信息请参见镜像文档中的 "非 amd64 架构?" 和***镜像常见问题中的 "镜像源在 Git 中已更改,该怎么办?"。
维护者:
KrakenD 维护团队
获取帮助:
文档、社区支持、提交 issue、其他支持渠道
Dockerfile 链接2.11.2, 2.11, 2, latest提交 issue 的位置:
[***]
支持的架构: (更多信息)
amd64、arm64v8
已发布镜像 artifact 详情:
repo-info 仓库的 repos/krakend/ 目录(历史记录)
(镜像元数据、传输大小等)
镜像更新:
official-images 仓库的 library/krakend 标签
official-images 仓库的 library/krakend 文件(历史记录)
本描述的来源:
docs 仓库的 krakend/ 目录(历史记录)
!logo
KrakenD 是一个无状态、高性能、企业级的开源 API 网关,使用 Go 语言编写。其引擎(前身为 KrakenD Framework)现为Linux 基金会项目,代号为 Lura Project。Lura 是唯一一个托管在中立开放论坛中的企业级 API 网关。
KrakenD 轻量且简单,只需编写配置文件即可使用,无需 Go 语言知识。它支持连接内部和外部服务、数据转换与过滤,以及同时或级联聚合多个数据源(API、gRPC、队列与发布/订阅、lambda 等)。它可保护 API 访问、控制使用吞吐量,并与众多第三方服务集成。
所有功能均旨在提供卓越性能和无限可扩展性。
KrakenD 仅需一个配置文件即可创建 API 网关,也可支持反映组织架构的复杂配置。配置文件可位于容器中的任何位置,默认工作目录为 /etc/krakend。
使用本镜像时,可通过 COPY 命令将 krakend.json 文件复制到容器内,或使用卷挂载。配置仅在启动时检查,之后不再使用。若无配置文件,可通过 KrakenD Designer UI 生成。
⚠️ 注意:KrakenD 不会在配置更改时热重载,需重启容器。
可通过以下命令启动带健康检查的空网关:
docker run -d -p 8080:8080 -v "$PWD:/etc/krakend/" arm64v8/krakend curl http://localhost:8080/__health {"agents":{},"now":"2024-05-23 14:35:55.552591448 +0000 UTC m=+26.856583003","status":"ok"}
以下是运行 KrakenD 的多个示例。默认执行 run 命令,但可在 run 命令末尾传递其他命令和标志。
配置文件取自当前目录 ($PWD),因此所有示例均需至少存在 krakend.json 文件。
-d):此标志可安全用于生产环境,用于通过启用 /__debug 端点 将 KrakenD 作为伪后端。
docker run -p 8080:8080 -v "${PWD}:/etc/krakend/" arm64v8/krakend run -d -c /etc/krakend/krakend.json
参见 check 命令:
docker run -it -v $PWD:/etc/krakend/ arm64v8/krakend check --config krakend.json
docker run --rm -it arm64v8/krakend help
大多数生产环境部署不希望依赖卷挂载,而是基于 arm64v8/krakend 构建自定义镜像:
Dockerfile 示例:
FROM arm64v8/krakend:<version> # 注意:生产环境避免使用 :latest 标签,应固定主版本。 COPY krakend.json ./ # 检查并测试文件有效性 RUN krakend check -t --lint-no-network -c krakend.json
若需通过多文件、文件夹管理配置,复用模板并在团队间分发,可使用 灵活配置(FC)。以下 Dockerfile 结合 FC、krakend check 命令和两步构建:
FROM arm64v8/krakend:<version> as builder COPY krakend.tmpl . COPY config . # 将临时输出文件保存至 /tmp 以避免权限错误 RUN FC_ENABLE=1 \ FC_OUT=/tmp/krakend.json \ FC_PARTIALS="/etc/krakend/partials" \ FC_SETTINGS="/etc/krakend/settings" \ FC_TEMPLATES="/etc/krakend/templates" \ krakend check -d -t -c krakend.tmpl # 仅复制输出文件,舍弃其他文件 FROM arm64v8/krakend:<version> COPY --from=builder /tmp/krakend.json .
上述配置假设文件夹结构如下:
. ├── config │ ├── partials │ ├── settings │ │ └── env.json │ └── templates │ └── some.tmpl ├── Dockerfile └── krakend.tmpl
以下是启动 KrakenD 及 API 的简单 docker compose 文件:
services: krakend: image: arm64v8/krakend:<version> ports: - "8080:8080" volumes: - ./:/etc/krakend
另一个使用灵活配置和自定义模板文件名(my_krakend.tmpl)的示例:
services: krakend: image: arm64v8/krakend:<version> ports: - "8080:8080" volumes: - ./:/etc/krakend environment: - FC_ENABLE=1 - FC_OUT=/tmp/krakend.json - FC_PARTIALS="/etc/krakend/config/partials" - FC_SETTINGS="/etc/krakend/config/settings/prod" - FC_TEMPLATES="/etc/krakend/config/templates" command: ["krakend", "run", "-c", "krakend.tmpl", "-d"]
所有 krakend 命令以 krakend 用户(uid=1000)执行,其他命令(如 sh)以 root 执行。
可直接使用 krakend 的子命令(如 run、help、version、check、check-plugin、test-plugin),入口点会自动添加 krakend 命令。例如,以下命令等效:
docker run --rm -it arm64v8/krakend help docker run --rm -it arm64v8/krakend krakend help
查看本镜像中软件的 许可证信息。
与所有 Docker 镜像一样,本镜像可能包含其他软件,这些软件可能采用其他许可证(如基础发行版中的 Bash 等,以及主要软件的任何直接或间接依赖)。
可在 repo-info 仓库的 krakend/ 目录 中找到部分自动检测到的附加许可证信息。
对于任何预构建镜像的使用,镜像用户有责任确保其使用符合包含的所有软件的相关许可证。

免费版仅支持 Docker Hub 加速,不承诺可用性和速度;专业版支持更多镜像源,保证可用性和稳定速度,提供优先客服响应。
免费版仅支持 docker.io;专业版支持 docker.io、gcr.io、ghcr.io、registry.k8s.io、nvcr.io、quay.io、mcr.microsoft.com、docker.elastic.co 等。
当返回 402 Payment Required 错误时,表示流量已耗尽,需要充值流量包以恢复服务。
通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。
先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。
使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。
探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录方式配置轩辕镜像加速服务,包含7个详细步骤
在 Linux 系统上配置轩辕镜像源,支持主流发行版
在 Docker Desktop 中配置轩辕镜像加速,适用于桌面系统
在 Docker Compose 中使用轩辕镜像加速,支持容器编排
在 k8s 中配置 containerd 使用轩辕镜像加速
在宝塔面板中配置轩辕镜像加速,提升服务器管理效率
在 Synology 群晖NAS系统中配置轩辕镜像加速
在飞牛fnOS系统中配置轩辕镜像加速
在极空间NAS中配置轩辕镜像加速
在爱快ikuai系统中配置轩辕镜像加速
在绿联NAS系统中配置轩辕镜像加速
在威联通NAS系统中配置轩辕镜像加速
在 Podman 中配置轩辕镜像加速,支持多系统
配置轩辕镜像加速9大主流镜像仓库,包含详细配置步骤
无需登录即可使用轩辕镜像加速服务,更加便捷高效
需要其他帮助?请查看我们的 常见问题 或 官方QQ群: 13763429