Comprehensive toolset for testing, debugging and interacting with APISIX management APIs
216
The apisix-tools Docker image provides a comprehensive toolset for testing, debugging, and interacting with APISIX Admin APIs. This image includes pre-installed utilities like curl, jq, yq, and other essential tools to streamline development and operations workflows with Apache APISIX.
Features
API Testing and Debugging:
- curl: Test API endpoints quickly.
httpie: A user-friendly alternative to curl for API interaction.
- jq and yq: Parse and manipulate JSON and YAML responses efficiently.
Network Utilities:
- netcat-openbsd and dnsutils: Diagnose network issues and resolve DNS queries.
- openssl: Securely generate and manage SSL/TLS keys and certificates.
Development Tools:
- git: Clone and manage repositories for testing configurations or plugins.
- vim: Edit files directly within the container.
Load Testing:
- Includes k6, a powerful tool for performance and load testing.
Other Tools:
- python3 and pip: Extend capabilities with Python-based utilities.
- apache2-utils: Generate and verify HTTP digest authentication.
Use Cases
Testing APISIX Admin API:
Interact with the Admin API using pre-installed tools like curl and httpie.
Load Testing:
- Use k6 to simulate high traffic and evaluate APISIX's performance.
Configuration Validation:
- Parse and manipulate configurations using jq and yq.
Network Troubleshooting:
- Leverage dnsutils and netcat to debug connectivity issues in your environment.
Usage
Run the container in your Kubernetes cluster or as a standalone Docker container:
docker run -it opsource/apisix-tools:latest bash
From within the container, you can start testing:
curl -H "X-API-KEY: <your-admin-key>" http://apisix-admin.ingress-apisix.svc.cluster.local:9180
k6 run load_test.js
Run in Pod Kubernetes:
apiVersion: v1
kind: Pod
metadata:
name: apisix-tool-pod
namespace: ingress-apisix
spec:
containers:
- name: apisix-tool
image: apisix-tools:latest
env:
- name: ADMIN_KEY
value: "your_admin_key_here"
command: ["sleep", "infinity"]
kubectl -n <namespace> exec -it apisix-tool-pod -- bash
Content type
Image
Digest
sha256:3e7383a51…
Size
281.8 MB
Last updated
almost 2 years ago
docker pull opsource/apisix-tools