Skip to content

Commit 1b96444

Browse files
authored
docs: enabling MD045 - images with alternate text (#5280)
1 parent b5d72cb commit 1b96444

23 files changed

+72
-66
lines changed

.markdownlint.yml

-1
Original file line numberDiff line numberDiff line change
@@ -31,5 +31,4 @@ MD034: false
3131
MD036: false
3232
MD040: false
3333
MD041: false
34-
MD045: false
3534
MD046: false

docs/en/latest/aws.md

+5-5
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ title: Running APISIX in AWS with AWS CDK
2727

2828
This reference architecture walks you through building **APISIX** as a serverless container API Gateway on top of AWS Fargate with AWS CDK.
2929

30-
![](../../assets/images/aws-fargate-cdk.png)
30+
![Apache APISIX Serverless Architecture](../../assets/images/aws-fargate-cdk.png)
3131

3232
## Generate an AWS CDK project with `projen`
3333

@@ -208,15 +208,15 @@ Address: 44.226.102.63
208208

209209
Configure the IP addresses returned as your upstream nodes in your **APISIX** dashboard followed by the **Services** and **Routes** configuration. Let's say we have a `/index.php` as the URI for the first route for our first **Service** from the **Upstream** IP addresses.
210210

211-
![](../../assets/images/aws-nlb-ip-addr.png)
212-
![](../../assets/images/aws-define-service.png)
213-
![](../../assets/images/aws-define-route.png)
211+
![upstream with AWS NLB IP addresses](../../assets/images/aws-nlb-ip-addr.png)
212+
![service with created upstream](../../assets/images/aws-define-service.png)
213+
![define route with service and uri](../../assets/images/aws-define-route.png)
214214

215215
## Validation
216216

217217
OK. Let's test the `/index.php` on `{apiSix.ApiSixServiceServiceURL}/index.php`
218218

219-
![](../../assets/images/aws-caddy-php-welcome-page.png)
219+
![Testing Apache APISIX on AWS Fargate](../../assets/images/aws-caddy-php-welcome-page.png)
220220

221221
Now we have been successfully running **APISIX** in AWS Fargate as serverless container API Gateway service.
222222

docs/en/latest/discovery.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ title: Integration service discovery registry
2525

2626
When system traffic changes, the number of servers of the upstream service also increases or decreases, or the server needs to be replaced due to its hardware failure. If the gateway maintains upstream service information through configuration, the maintenance costs in the microservices architecture pattern are unpredictable. Furthermore, due to the untimely update of these information, will also bring a certain impact for the business, and the impact of human error operation can not be ignored. So it is very necessary for the gateway to automatically get the latest list of service instances through the service registry。As shown in the figure below:
2727

28-
![](../../assets/images/discovery.png)
28+
![discovery through service registry](../../assets/images/discovery.png)
2929

3030
1. When the service starts, it will report some of its information, such as the service name, IP, port and other information to the registry. The services communicate with the registry using a mechanism such as a heartbeat, and if the registry and the service are unable to communicate for a long time, the instance will be cancel.When the service goes offline, the registry will delete the instance information.
3131
2. The gateway gets service instance information from the registry in near-real time.

docs/en/latest/discovery/consul_kv.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ title: consul_kv
2626
For users who used [nginx-upsync-module](https://github.com/weibocom/nginx-upsync-module) and consul key value for service discovery way, as we Weibo Mobile Team, maybe need it.
2727

2828
Thanks to @fatman-x guy, who developed this module, called `consul_kv`, and its worker process data flow is below:
29-
![](https://user-images.githubusercontent.com/548385/107141841-6ced3e00-6966-11eb-8aa4-bc790a4ad113.png)
29+
![consul kv module data flow diagram](https://user-images.githubusercontent.com/548385/107141841-6ced3e00-6966-11eb-8aa4-bc790a4ad113.png)
3030

3131
## Configuration for discovery client
3232

docs/en/latest/plugins/hmac-auth.md

+4-2
Original file line numberDiff line numberDiff line change
@@ -29,8 +29,10 @@ title: hmac-auth
2929
- [How To Enable](#how-to-enable)
3030
- [Test Plugin](#test-plugin)
3131
- [generate signature:](#generate-signature)
32+
- [Request body checking](#request-body-checking)
3233
- [Use the generated signature to try the request](#use-the-generated-signature-to-try-the-request)
3334
- [Custom header key](#custom-header-key)
35+
- [Enable request body checking](#enable-request-body-checking)
3436
- [Disable Plugin](#disable-plugin)
3537
- [Generate Signature Examples](#generate-signature-examples)
3638

@@ -76,10 +78,10 @@ curl http://127.0.0.1:9080/apisix/admin/consumers -H 'X-API-KEY: edd1c9f034335f1
7678
The default `keep_headers` is false and `encode_uri_params` is true.
7779

7880
You can visit the dashboard to complete the above operations through the web interface, first add a consumer:
79-
![](../../../assets/images/plugin/hmac-auth-1.png)
81+
![create a consumer](../../../assets/images/plugin/hmac-auth-1.png)
8082

8183
Then add the hmac-auth plugin to the consumer page:
82-
![](../../../assets/images/plugin/hmac-auth-2.png)
84+
![enable hmac plugin](../../../assets/images/plugin/hmac-auth-2.png)
8385

8486
2. add a Route or add a Service, and enable the `hmac-auth` plugin
8587

docs/en/latest/plugins/jwt-auth.md

+6-3
Original file line numberDiff line numberDiff line change
@@ -25,8 +25,11 @@ title: jwt-auth
2525

2626
- [**Name**](#name)
2727
- [**Attributes**](#attributes)
28+
- [**API**](#api)
2829
- [**How To Enable**](#how-to-enable)
2930
- [**Test Plugin**](#test-plugin)
31+
- [get the token in `jwt-auth` plugin:](#get-the-token-in-jwt-auth-plugin)
32+
- [try request with token](#try-request-with-token)
3033
- [**Disable Plugin**](#disable-plugin)
3134

3235
## Name
@@ -111,14 +114,14 @@ You can use [APISIX Dashboard](https://github.com/apache/apisix-dashboard) to co
111114

112115
1. Add a Consumer through the web console:
113116

114-
![](../../../assets/images/plugin/jwt-auth-1.png)
117+
![create a consumer](../../../assets/images/plugin/jwt-auth-1.png)
115118

116119
then add jwt-auth plugin in the Consumer page:
117-
![](../../../assets/images/plugin/jwt-auth-2.png)
120+
![enable jwt plugin](../../../assets/images/plugin/jwt-auth-2.png)
118121

119122
2. Create a Route or Service object and enable the jwt-auth plugin:
120123

121-
![](../../../assets/images/plugin/jwt-auth-3.png)
124+
![enable jwt from route or service](../../../assets/images/plugin/jwt-auth-3.png)
122125

123126
## Test Plugin
124127

docs/en/latest/plugins/key-auth.md

+2-2
Original file line numberDiff line numberDiff line change
@@ -69,10 +69,10 @@ curl http://127.0.0.1:9080/apisix/admin/consumers -H 'X-API-KEY: edd1c9f034335f1
6969
```
7070

7171
You also can complete the above operation through the web interface, first add a route:
72-
![](../../../assets/images/plugin/key-auth-1.png)
72+
![create a consumer](../../../assets/images/plugin/key-auth-1.png)
7373

7474
Then add key-auth plugin:
75-
![](../../../assets/images/plugin/key-auth-2.png)
75+
![enable key-auth plugin](../../../assets/images/plugin/key-auth-2.png)
7676

7777
2. creates a route or service object, and enable plugin `key-auth`.
7878

docs/en/latest/plugins/limit-conn.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -78,7 +78,7 @@ curl http://127.0.0.1:9080/apisix/admin/routes/1 -H 'X-API-KEY: edd1c9f034335f13
7878
```
7979

8080
You also can complete the above operation through the web interface, first add a route, then add limit-conn plugin:
81-
![](../../../assets/images/plugin/limit-conn-1.png)
81+
![enable limit-conn plugin](../../../assets/images/plugin/limit-conn-1.png)
8282

8383
## Test Plugin
8484

docs/en/latest/plugins/prometheus.md

+8-8
Original file line numberDiff line numberDiff line change
@@ -84,11 +84,11 @@ You can use [APISIX Dashboard](https://github.com/apache/apisix-dashboard) to co
8484

8585
First, add a Route:
8686

87-
![](../../../assets/images/plugin/prometheus-1.png)
87+
![create a route](../../../assets/images/plugin/prometheus-1.png)
8888

8989
Then add prometheus plugin:
9090

91-
![](../../../assets/images/plugin/prometheus-2.png)
91+
![enable prometheus plugin](../../../assets/images/plugin/prometheus-2.png)
9292

9393
## How to fetch the metric data
9494

@@ -114,9 +114,9 @@ scrape_configs:
114114
115115
And we can check the status at prometheus console:
116116
117-
![](../../../assets/images/plugin/prometheus01.png)
117+
![checking status on prometheus dashboard](../../../assets/images/plugin/prometheus01.png)
118118
119-
![](../../../assets/images/plugin/prometheus02.png)
119+
![prometheus apisix in-depth metric view](../../../assets/images/plugin/prometheus02.png)
120120
121121
## How to specify export uri
122122
@@ -142,13 +142,13 @@ Downloads [Grafana dashboard meta](https://github.com/apache/apisix/blob/master/
142142

143143
Or you can goto [Grafana official](https://grafana.com/grafana/dashboards/11719) for `Grafana` meta data.
144144

145-
![](../../../assets/images/plugin/grafana-1.png)
145+
![Grafana chart-1](../../../assets/images/plugin/grafana-1.png)
146146

147-
![](../../../assets/images/plugin/grafana-2.png)
147+
![Grafana chart-2](../../../assets/images/plugin/grafana-2.png)
148148

149-
![](../../../assets/images/plugin/grafana-3.png)
149+
![Grafana chart-3](../../../assets/images/plugin/grafana-3.png)
150150

151-
![](../../../assets/images/plugin/grafana-4.png)
151+
![Grafana chart-4](../../../assets/images/plugin/grafana-4.png)
152152

153153
### Available metrics
154154

docs/en/latest/plugins/response-rewrite.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -131,6 +131,6 @@ The `response-rewrite` plugin has been disabled now. It works for other plugins.
131131

132132
`ngx.exit` will interrupt the execution of the current request and return status code to Nginx.
133133

134-
![](https://cdn.jsdelivr.net/gh/Miss-you/img/picgo/20201113010623.png)
134+
![ngx.edit tabular overview](https://cdn.jsdelivr.net/gh/Miss-you/img/picgo/20201113010623.png)
135135

136136
However, if you execute `ngx.exit` during the access phase, it only interrupts the request processing phase, and the response phase will still process it, i.e. if you configure the `response-rewrite` plugin, it will force overwriting of your response information (e.g. response status code).

docs/en/latest/plugins/sls-logger.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -99,7 +99,7 @@ hello, world
9999

100100
* check log in ali cloud log service
101101

102-
![](../../../assets/images/plugin/sls-logger-1.png "sls logger view")
102+
![sls logger view](../../../assets/images/plugin/sls-logger-1.png "sls logger view")
103103

104104
## Disable Plugin
105105

docs/en/latest/plugins/wolf-rbac.md

+2-2
Original file line numberDiff line numberDiff line change
@@ -82,10 +82,10 @@ curl http://127.0.0.1:9080/apisix/admin/consumers -H 'X-API-KEY: edd1c9f034335f
8282
```
8383

8484
You also can complete the above operations through the web interface, first add a consumer:
85-
![](../../../assets/images/plugin/wolf-rbac-1.png)
85+
![add a consumer](../../../assets/images/plugin/wolf-rbac-1.png)
8686

8787
Then add the wolf-rbac plugin to the consumer page:
88-
![](../../../assets/images/plugin/wolf-rbac-2.png)
88+
![enable wolf-rbac plugin](../../../assets/images/plugin/wolf-rbac-2.png)
8989

9090
Notes: The `appid` filled in above needs to already exist in the wolf system.
9191

docs/en/latest/plugins/zipkin.md

+4-3
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@ title: Zipkin
2727
- [**Attributes**](#attributes)
2828
- [**How To Enable**](#how-to-enable)
2929
- [**Test Plugin**](#test-plugin)
30+
- [run the Zipkin instance](#run-the-zipkin-instance)
3031
- [**Disable Plugin**](#disable-plugin)
3132

3233
## Name
@@ -95,7 +96,7 @@ curl http://127.0.0.1:9080/apisix/admin/routes/1 -H 'X-API-KEY: edd1c9f034335f1
9596

9697
You also can complete the above operation through the web interface, first add a route, then add zipkin plugin:
9798

98-
![](../../../assets/images/plugin/zipkin-1.png)
99+
![enable zipkin plugin](../../../assets/images/plugin/zipkin-1.png)
99100

100101
## Test Plugin
101102

@@ -121,9 +122,9 @@ Then you can use a browser to access the webUI of Zipkin:
121122
http://127.0.0.1:9411/zipkin
122123
```
123124

124-
![](../../../assets/images/plugin/zipkin-1.jpg)
125+
![zipkin web-ui](../../../assets/images/plugin/zipkin-1.jpg)
125126

126-
![](../../../assets/images/plugin/zipkin-2.jpg)
127+
![zipkin web-ui list view](../../../assets/images/plugin/zipkin-2.jpg)
127128

128129
## Disable Plugin
129130

docs/zh/latest/README.md

+2-2
Original file line numberDiff line numberDiff line change
@@ -54,9 +54,9 @@ Apache APISIX 的技术架构如下图所示:
5454
- [Apache APISIX® Go Plugin Runner](https://github.com/apache/apisix-go-plugin-runner/issues?q=is%3Aopen+is%3Aissue+label%3A%22good+first+issue%22)
5555
- [Apache APISIX® Python Plugin Runner](https://github.com/apache/apisix-python-plugin-runner/issues?q=is%3Aopen+is%3Aissue+label%3A%22good+first+issue%22)
5656
- **微信公众号**
57-
<br/>![](../../assets/images/OA.jpg)
57+
<br/>![wechat official account](../../assets/images/OA.jpg)
5858
- **微信视频号**
59-
<br/>![](../../assets/images/MA.jpeg)
59+
<br/>![wechat video account](../../assets/images/MA.jpeg)
6060

6161
## 特性
6262

docs/zh/latest/discovery.md

+12-12
Original file line numberDiff line numberDiff line change
@@ -21,23 +21,23 @@ title: 集成服务发现注册中心
2121
#
2222
-->
2323

24-
* [摘要](#摘要)
25-
* [当前支持的注册中心](#当前支持的注册中心)
26-
* [如何扩展注册中心?](#如何扩展注册中心)
27-
* [基本步骤](#基本步骤)
28-
* [以 Eureka 举例](#以-eureka-举例)
29-
* [实现 eureka.lua](#实现-eurekalua)
30-
* [Eureka 与 APISIX 之间数据转换逻辑](#eureka-与-apisix-之间数据转换逻辑)
31-
* [注册中心配置](#注册中心配置)
32-
* [初始化服务发现](#初始化服务发现)
33-
* [Eureka 的配置](#eureka-的配置)
34-
* [upstream 配置](#upstream-配置)
24+
- [摘要](#摘要)
25+
- [当前支持的注册中心](#当前支持的注册中心)
26+
- [如何扩展注册中心?](#如何扩展注册中心)
27+
- [基本步骤](#基本步骤)
28+
- [以 Eureka 举例](#以-eureka-举例)
29+
- [实现 eureka.lua](#实现-eurekalua)
30+
- [Eureka 与 APISIX 之间数据转换逻辑](#eureka-与-apisix-之间数据转换逻辑)
31+
- [注册中心配置](#注册中心配置)
32+
- [初始化服务发现](#初始化服务发现)
33+
- [Eureka 的配置](#eureka-的配置)
34+
- [upstream 配置](#upstream-配置)
3535

3636
## 摘要
3737

3838
当业务量发生变化时,需要对上游服务进行扩缩容,或者因服务器硬件故障需要更换服务器。如果网关是通过配置来维护上游服务信息,在微服务架构模式下,其带来的维护成本可想而知。再者因不能及时更新这些信息,也会对业务带来一定的影响,还有人为误操作带来的影响也不可忽视,所以网关非常必要通过服务注册中心动态获取最新的服务实例信息。架构图如下所示:
3939

40-
![](../../assets/images/discovery-cn.png)
40+
![discovery through service registry](../../assets/images/discovery-cn.png)
4141

4242
1. 服务启动时将自身的一些信息,比如服务名、IP、端口等信息上报到注册中心;各个服务与注册中心使用一定机制(例如心跳)通信,如果注册中心与服务长时间无法通信,就会注销该实例;当服务下线时,会删除注册中心的实例信息;
4343
2. 网关会准实时地从注册中心获取服务实例信息;

docs/zh/latest/plugins/jwt-auth.md

+4-3
Original file line numberDiff line numberDiff line change
@@ -110,14 +110,15 @@ curl http://127.0.0.1:9080/apisix/admin/routes/1 -H 'X-API-KEY: edd1c9f034335f13
110110
你可以使用 [APISIX Dashboard](https://github.com/apache/apisix-dashboard),通过 web 界面来完成上面的操作。
111111

112112
1. 先增加一个 consumer:
113-
![](../../../assets/images/plugin/jwt-auth-1.png)
113+
114+
![create a consumer](../../../assets/images/plugin/jwt-auth-1.png)
114115

115116
然后在 consumer 页面中添加 jwt-auth 插件:
116-
![](../../../assets/images/plugin/jwt-auth-2.png)
117+
![enable jwt plugin](../../../assets/images/plugin/jwt-auth-2.png)
117118

118119
2. 创建 Route 或 Service 对象,并开启 jwt-auth 插件:
119120

120-
![](../../../assets/images/plugin/jwt-auth-3.png)
121+
![enabe jwt from route or service](../../../assets/images/plugin/jwt-auth-3.png)
121122

122123
## 测试插件
123124

docs/zh/latest/plugins/key-auth.md

+2-2
Original file line numberDiff line numberDiff line change
@@ -67,10 +67,10 @@ curl http://127.0.0.1:9080/apisix/admin/consumers -H 'X-API-KEY: edd1c9f034335f1
6767
```
6868

6969
你也可以通过 web 界面来完成上面的操作,先增加一个 consumer:
70-
![](../../../assets/images/plugin/key-auth-1.png)
70+
![create a consumer](../../../assets/images/plugin/key-auth-1.png)
7171

7272
然后在 consumer 页面中添加 key-auth 插件:
73-
![](../../../assets/images/plugin/key-auth-2.png)
73+
![enable key-auth plugin](../../../assets/images/plugin/key-auth-2.png)
7474

7575
2. 创建 route 或 service 对象,并开启 `key-auth` 插件。
7676

docs/zh/latest/plugins/limit-conn.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -69,7 +69,7 @@ curl http://127.0.0.1:9080/apisix/admin/routes/1 -H 'X-API-KEY: edd1c9f034335f13
6969
```
7070

7171
你也可以通过 web 界面来完成上面的操作,先增加一个 route,然后在插件页面中添加 limit-conn 插件:
72-
![](../../../assets/images/plugin/limit-conn-1.png)
72+
![enable limit-conn plugin](../../../assets/images/plugin/limit-conn-1.png)
7373

7474
#### test plugin
7575

docs/zh/latest/plugins/prometheus.md

+8-8
Original file line numberDiff line numberDiff line change
@@ -84,11 +84,11 @@ curl http://127.0.0.1:9080/apisix/admin/routes/1 -H 'X-API-KEY: edd1c9f034335f13
8484

8585
先增加一个 Route:
8686

87-
![](../../../assets/images/plugin/prometheus-1.png)
87+
![create a route](../../../assets/images/plugin/prometheus-1.png)
8888

8989
然后在 route 页面中添加 prometheus 插件:
9090

91-
![](../../../assets/images/plugin/prometheus-2.png)
91+
![enable prometheus plugin](../../../assets/images/plugin/prometheus-2.png)
9292

9393
## 如何提取指标数据
9494

@@ -113,9 +113,9 @@ scrape_configs:
113113
114114
我们也可以在 prometheus 控制台中去检查状态:
115115
116-
![](../../../assets/images/plugin/prometheus01.png)
116+
![checking status on prometheus dashboard](../../../assets/images/plugin/prometheus01.png)
117117
118-
![](../../../assets/images/plugin/prometheus02.png)
118+
![prometheus apisix in-depth metric view](../../../assets/images/plugin/prometheus02.png)
119119
120120
## 如何修改暴露指标的 uri
121121
@@ -141,13 +141,13 @@ plugin_attr:
141141

142142
你可以到 [Grafana 官方](https://grafana.com/grafana/dashboards/11719) 下载 `Grafana` 元数据.
143143

144-
![](../../../assets/images/plugin/grafana-1.png)
144+
![Grafana chart-1](../../../assets/images/plugin/grafana-1.png)
145145

146-
![](../../../assets/images/plugin/grafana-2.png)
146+
![Grafana chart-2](../../../assets/images/plugin/grafana-2.png)
147147

148-
![](../../../assets/images/plugin/grafana-3.png)
148+
![Grafana chart-3](../../../assets/images/plugin/grafana-3.png)
149149

150-
![](../../../assets/images/plugin/grafana-4.png)
150+
![Grafana chart-4](../../../assets/images/plugin/grafana-4.png)
151151

152152
### 可有的指标
153153

docs/zh/latest/plugins/response-rewrite.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -125,6 +125,6 @@ curl http://127.0.0.1:9080/apisix/admin/routes/1 -H 'X-API-KEY: edd1c9f034335f1
125125

126126
`ngx.exit`将中断当前请求的执行,并返回状态码给 Nginx。
127127

128-
![](https://cdn.jsdelivr.net/gh/Miss-you/img/picgo/20201113010623.png)
128+
![ngx.edit tabular overview](https://cdn.jsdelivr.net/gh/Miss-you/img/picgo/20201113010623.png)
129129

130130
但是很多人可能会对`ngx.exit`理解出现偏差,即如果你在`access`阶段执行`ngx.exit`,只是中断了请求处理阶段,响应阶段仍然会处理。比如,如果你配置了`response-rewrite`插件,它会强制覆盖你的响应信息(如响应代码)。

docs/zh/latest/plugins/sls-logger.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -101,7 +101,7 @@ hello, world
101101
```
102102

103103
* 查看阿里云日志服务上传记录
104-
![](../../../assets/images/plugin/sls-logger-1.png "阿里云日志服务预览")
104+
![sls logger view](../../../assets/images/plugin/sls-logger-1.png "阿里云日志服务预览")
105105

106106
## 禁用插件
107107

docs/zh/latest/plugins/wolf-rbac.md

+2-2
Original file line numberDiff line numberDiff line change
@@ -82,10 +82,10 @@ curl http://127.0.0.1:9080/apisix/admin/consumers -H 'X-API-KEY: edd1c9f034335f
8282
```
8383

8484
你也可以通过 web 界面来完成上面的操作,先增加一个 consumer:
85-
![](../../../assets/images/plugin/wolf-rbac-1.png)
85+
![add a consumer](../../../assets/images/plugin/wolf-rbac-1.png)
8686

8787
然后在 consumer 页面中添加 wolf-rbac 插件:
88-
![](../../../assets/images/plugin/wolf-rbac-2.png)
88+
![enable wolf-rbac plugin](../../../assets/images/plugin/wolf-rbac-2.png)
8989

9090
注意: 上面填写的 `appid` 需要在 wolf 控制台中已经存在的.
9191

0 commit comments

Comments
 (0)