If you need a Vue.js build of the Apache APISIX Dashboard 1.0, use the master-vue branch.
The 2.0 version of the dashboard removed MySQL from version 1.5 and will operate directly on etcd.
If you are using Apache APISIX below v2.0, be aware that the data from the etcd v2 API is not compatible with the data from the v3 API. Apache APISIX Dashboard v2.0 and above uses the etcd v3 API, and apisix 1.5 and below uses the etcd v2 API.
4. After modifying the plugin schema or creating a custom plugin in Apache APISIX, why can't I find it on the dashboard?
Since the Dashboard caches the jsonschema data of the plugins in Apache APISIX, you need to synchronize the data in the Dashboard after you create your custom plugins in Apache APISIX, which currently only supports manual operation, this issue will be optimized in the following versions. Please follow the following guide.
-
Install Lua and
zip
. -
Execute the following commands.
# `$version` is the version number of Apache APISIX, e.g. master or 2.1.
$ api/build-tools/schema-sync.sh $version
If you have a custom plugin, make sure it is in the apisix
directory and use the following command.
$ api/build-tools/schema-sync.sh /path/to/apisix
# e.g
$ api/build-tools/schema-sync.sh /usr/local/apisix
After the command finishes executing, if you are using a binary manager-api
that has already been built, you will need to manually copy api/conf/schema.json
to the conf
directory under the Dashboard working directory. where working directory refers to the conf
directory under this document is the output
directory, or the directory with the modified name, that is generated in the root directory after the build is complete.
We use go-swagger to generate Swagger 2.0 documents, and then convert them to markdown format so that they can be viewed directly in the github repository. Specific steps are as follows:
-
Write comments according to Specification. For details, please refer to the existing example
api/internal/handler/route/route.go
in this project. -
Use the
go-swagger
tool to generate Swagger 2.0 documents.
$ swagger generate spec -o ./docs/api/api.yaml --scan-models
- Use the
swagger-markdown
tool to convert Swagger 2.0 documents into markdown documents.
$ swagger-markdown -i ./docs/api/api.yaml