apisix
Contents
“apisix”
启动etcd
apisix
podman run -d \
--name apisix \
-v apisix-logs:/usr/local/apisix/logs \
-v apisix-conf:/usr/local/apisix/conf \
-v /etc/letsencrypt/live/wiloon.com-0001:/usr/local/apisix/cert \
-p 9180:9180 \
-p 9080:9080 \
-p 443:9443 \
apache/apisix
allow admin
allow_admin: # http://nginx.org/en/docs/http/ngx_http_access_module.html#allow - 192.168.50.116/24 # If we don’t set any IP list, then any IP access is allowed by default.
修改etcd 地址
etcd:
host:
- "http://192.168.50.101:2379"
test
curl "http://192.168.50.101:9080/apisix/admin/services/" -H 'X-API-KEY: edd1c9f034335f136f87ad84b625c8f1'
build apisix-dashboard
buildah bud -f Dockerfile -t apisix-dashboard:1.5 .
run apisix dashboard
podman run -d \
--name apisix-dashboard \
-p 80:80 \
-v apisix-dashboard-config:/etc/nginx/conf.d/ \
-v /etc/localtime:/etc/localtime:ro \
nginx
设置 Upstream
创建 id 为 50 的上游信息
curl "http://192.168.50.101:9080/apisix/admin/upstreams/50" -H 'X-API-KEY: edd1c9f034335f136f87ad84b625c8f1' -X PUT -d '
{ “type”: “roundrobin”, “nodes”: { “192.168.50.114:3000”: 1 } }’
config host and upstrem
curl “http://192.168.50.101:9080/apisix/admin/routes/5” -H ‘X-API-KEY: edd1c9f034335f136f87ad84b625c8f1’ -X PUT -d ' { “uri”: “/*", “host”: “foo.wiloon.com”, “plugins”: { }, “upstream_id”: 50 }’
config tls cert
convert multi line pem to single line pem with following command
awk 'NF {sub(/\r/, ""); printf "%s\\n",$0;}' cert-name.pem
curl http://127.0.0.1:9080/apisix/admin/ssl/1 -H 'X-API-KEY: edd1c9f034335f136f87ad84b625c8f1' -X PUT -d '
{
"cert": "-----BEGIN CERTIFICATE-----\n<base64 pem cert>\n-----END CERTIFICATE-----\n",
"key": "-----BEGIN PRIVATE KEY-----\nM<base64 pem private key>\n-----END PRIVATE KEY-----\n",
"sni": "wiloon.com"
}'
curl http://127.0.0.1:9080/apisix/admin/ssl/2 -H 'X-API-KEY: edd1c9f034335f136f87ad84b625c8f1' -X PUT -d '
{
"cert": "-----BEGIN CERTIFICATE-----\n<base64 pem cert>\n-----END CERTIFICATE-----\n",
"key": "-----BEGIN PRIVATE KEY-----\nM<base64 pem private key>\n-----END PRIVATE KEY-----\n",
"sni": "*.wiloon.com"
}'
get route config
curl "http://127.0.0.1:9080/apisix/admin/upstreams/53" -H 'X-API-KEY: 'edd1c9f034335f136f87ad84b625c8f1 -X GET
Author -
LastMod 0001-01-01