本站面向开发者与科研用户,提供开源镜像的搜索和下载加速服务。
所有镜像均来源于原始开源仓库,本站不存储、不修改、不传播任何镜像内容。

dadjokes Docker 镜像下载 - 轩辕镜像

dadjokes 镜像详细信息和使用指南

dadjokes 镜像标签列表和版本信息

dadjokes 镜像拉取命令和加速下载

dadjokes 镜像使用说明和配置指南

Docker 镜像加速服务 - 轩辕镜像平台

国内开发者首选的 Docker 镜像加速平台

极速拉取 Docker 镜像服务

相关 Docker 镜像推荐

热门 Docker 镜像下载

dadjokes
yesinteractive/dadjokes

dadjokes 镜像详细信息

dadjokes 镜像标签列表

dadjokes 镜像使用说明

dadjokes 镜像拉取命令

Docker 镜像加速服务

轩辕镜像平台优势

镜像下载指南

相关 Docker 镜像推荐

提供冷笑话的小型微服务,用于测试kong、kubernetes、istio、kuma、openshift等技术。
1 收藏0 次下载activeyesinteractive镜像

dadjokes 镜像详细说明

dadjokes 使用指南

dadjokes 配置说明

dadjokes 官方文档

Dad Jokes Microservice 中文技术文档

!Dad Jokes As A Microservice

![Docker Pulls]([]
![GitHub stars]([
]
![GitHub release]([***]
!MIT

一、镜像概述和主要用途

Dad Jokes Microservice 是一个轻量级幽默微服务,主要用于测试各类 API 网关、容器编排平台、服务网格等基础设施,可作为 httpbin 的替代工具。该服务核心功能是返回随机“爸爸笑话”(Dad Jokes),并支持可选的请求信息回显,帮助用户测试和排查 API 网关、反向代理等组件的配置问题。

二、核心功能和特性

  • 随机笑话返回:每次请求返回一条随机“爸爸笑话”,包含开场白(Opener)和笑点(Punchline)。
  • 多 HTTP 方法支持:兼容 GET、POST、PUT、PATCH、DELETE 等多种 HTTP 方法。
  • 请求回显功能:可配置回显请求头、方法、URI、客户端 IP 等信息,辅助调试。
  • 反向代理适配:支持配置以适配反向代理场景,确保回显原始请求 URI。
  • 轻量级镜像:基于 Alpine 3.11 和 PHP 7.3 on Apache,体积小,部署高效。

三、使用场景和适用范围

适用于以下测试场景:

  • API 网关测试(如 Kong、Kubernetes Ingress Controller)
  • 容器编排平台测试(如 Kubernetes、OpenShift)
  • 服务网格测试(如 Istio、Kuma)
  • 反向代理配置验证(如 Nginx、HAProxy)
  • 替代 httpbin 进行基础 HTTP 请求响应测试

四、使用方法

4.1 基本请求

端点信息

  • URI/
  • 支持方法:GET、POST、PUT、PATCH、DELETE
  • 参数:可选
  • 成功响应200 OK

响应示例

json
{
  "Joke": {
    "Opener": "一堵墙对另一堵墙说了什么?",
    "Punchline": "我们在拐角见。",
    "Processing Time": "0.000537"
  },
  "DadJokesInfo": {
    "SourceCode": "[***]",
    "Version": "20250315"
  }
}

4.2 启用请求回显功能

通过以下两种方式启用请求信息回显:

方式一:环境变量配置

设置环境变量 DADJOKES_NOECHO=FALSE,全局启用回显。

方式二:URL 路径包含 /echo

在请求路径中加入 /echo(如 /echo/abc/efg/),临时启用回显。

回显响应示例

json
{
  "Joke": {
    "Opener": "没有眼睛的鹿叫什么?",
    "Punchline": "不知道(No eye-deer)!",
    "Processing Time": "0.000434"
  },
  "RequestEcho": {
    "Headers": {
      "Host": "somehost.com",
      "Connection": "keep-alive",
      "sec-ch-ua": "\"Chromium\";v=\"134\", \"Not:A-Brand\";v=\"24\", \"Google Chrome\";v=\"134\"",
      "sec-ch-ua-mobile": "?0",
      "sec-ch-ua-platform": "\"Windows\"",
      "DNT": "1",
      "Upgrade-Insecure-Requests": "1",
      "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/134.0.0.0 Safari/537.36",
      "Accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7",
      "Accept-Encoding": "gzip, deflate, br, zstd",
      "Accept-Language": "en-US,en;q=0.9",
      "Cookie": "mycooking=myvalue;"
    },
    "Method": "GET",
    "Origin": "123.45.67.123",
    "URI": "/echo/abc/efg/",
    "Arguments": {
      "uri": "/echo/abc/efg/"
    },
    "Data": "",
    "URL": "[***]"
  },
  "DadJokesInfo": {
    "SourceCode": "[***]",
    "Version": "20250315"
  }
}

4.3 反向代理配置

若服务部署在反向代理或 API 网关后,需回显原始请求 URI(而非上游代理目标 URI),可通过以下方式配置:

  • 设置环境变量 DADJOKES_BEHIND_PROXY=TRUE
  • 或修改配置文件 config/fsl_config.phpbehind_proxytrue

五、配置参数

环境变量默认值说明
DADJOKES_NOECHOTRUE是否禁用请求回显:TRUE(禁用)/FALSE(启用)
DADJOKES_BEHIND_PROXYFALSE是否适配反向代理:TRUE(启用,回显原始请求 URI)/FALSE(默认)

六、部署指南

6.1 镜像拉取

bash
docker pull yesinteractive/dadjokes

6.2 Docker 运行示例

基础运行(默认配置)

bash
docker run -d \
  -p 8100:8100 \  # HTTP 端口映射
  -p 8143:8143 \  # HTTPS 端口映射(自签名证书)
  yesinteractive/dadjokes

启用请求回显

bash
docker run -d \
  -p 8100:8100 \
  -p 8143:8143 \
  -e DADJOKES_NOECHO=FALSE \  # 启用回显
  yesinteractive/dadjokes

适配反向代理

bash
docker run -d \
  -p 8100:8100 \
  -p 8143:8143 \
  -e DADJOKES_BEHIND_PROXY=TRUE \  # 适配反向代理
  yesinteractive/dadjokes

6.3 Dockerfile 集成

dockerfile
FROM yesinteractive/dadjokes
# 添加自定义命令(如修改配置、添加自定义笑话等)
RUN echo "自定义命令"

6.4 其他部署示例

更多部署示例(Kubernetes、Kong Ingress、docker-compose 等)可参考 GitHub 示例目录。

七、演示服务

可访问 [***] 查看服务实际效果。

八、许可证

MIT 许可证(详情见 GitHub 仓库)。

用户好评

来自真实用户的反馈,见证轩辕镜像的优质服务

oldzhang的头像

oldzhang

运维工程师

Linux服务器

5

"Docker加速体验非常流畅,大镜像也能快速完成下载。"