Install API7 Enterprise
This tutorial walks you through installing API7 Enterprise in Docker using the quickstart script.
The installation will include the API7 Enterprise components, data plane, control plane, dashboard, and external components, PostgreSQL and Prometheus, for managing configuration and monitoring, respectively.
In this guide, a containerized all-in-one solution for Proof of Concept (PoC) tests is provided, including PostgreSQL and Prometheus. This eliminates the need for manual database and monitoring setup, streamlining your PoC process.
For production deployments, API7 Enterprise also supports MySQL and OceanBase in place of PostgreSQL. Please contact API7 experts to get solutions for high availability and scalability.
Prerequisites
- Install Docker and Docker Compose. It is recommended to use 3.10.0-927 or higher versions. It is known that 3.10.0-327 or previous versions are incompatible.
- Install cURL.
- Obtain a 30-day free trial license.
- Operating system: It is recommended to use Linux CentOS 7.6 or higher versions. It is known that Linux CentOS 7.2 or previous versions are incompatible.
Install API7 Enterprise
curl -sL "https://run.api7.ai/api7/quickstart" | bash
You should see a response similar to the following:
✔ Container api7-ee-postgresql
✔ Container api7-ee-prometheus
✔ Container api7-ee-api7-ee-dashboard
✔ Container api7-ee-api7-ee-dp-manager
✔ Container api7-ee-api7-ee-gateway
...
✔ API7-EE is ready!
API7-EE Listening: Dashboard(https://192.168.2.102:7443), Control Plane Address(http://192.168.2.102:7900, https://192.168.2.102:7943), Gateway(http://192.168.2.102:9080, https://192.168.2.102:9443)
API7-EE Listening: Dashboard(https://26.26.26.1:7443), Control Plane Address(http://26.26.26.1:7900, https://26.26.26.1:7943), Gateway(http://26.26.26.1:9080, https://26.26.26.1:9443)
If you want to access Dashboard with HTTP Endpoint(:7080), you can turn server.listen.disable to false in dashboard_conf/conf.yaml, then restart dashboard container
(Optional) Install ADC
You can also install the API Declarative CLI (ADC) to manage API7 Enterprise declaratively.
curl -sL "https://run.api7.ai/adc/install" | bash
To verify the installation, run:
adc help
You should see the following response:
Usage: adc [options] [command]
Options:
-V, --version output the version number
-h, --help display help for command
Commands:
ping [options] Verify connectivity with backend
dump [options] Dump configurations from the backend
diff [options] Show the difference between local and backend configurations
sync [options] Sync local configurations to backend
convert [options] Convert other API spec to ADC configurations
lint [options] Check provided configuration files, local execution only, ensuring inputs meet ADC requirements
help [command] display help for command
See the Command Reference for more details on the available commands.
Activate API7 Enterprise
Visit the API7 Enterprise Dashboard at
https://{your_inet_ip_addr}:7443
and log in with the default usernameadmin
and passwordadmin
.infoYou can also access the dashboard at
https://localhost:7443/login
. However, the subsequent deployment scripts generated in the dashboard will default to uselocalhost
as the IP address, which can lead to connectivity issues, such as when deploying API7 gateway and ingress controller on Kubernetes.Select the license that you want to upload and then click Upload to activate API7 Enterprise.
(Optional) Connect to API7 Enterprise with ADC
Before you can synchronize configurations to API7 Enterprise using ADC, first make sure your ADC client can authenticate and communicate with API7 Enterprise. You would need to configure a few variables either in a .env
file or on the command flags.
Navigate to the API7 Enterprise Dashboard and generate a token.
Create a .env
file with the following variables:
ADC_BACKEND=api7ee # specify the backend is API7 Enterprise
ADC_TOKEN=a7ee-YVDPvh6CXxMuz5iM... # replace with your token
ADC_SERVER=https://localhost:7443 # update server address if you are not running API7 Enterprise locally
Alternatively, you could also specify these values in command flags. See the ADC Environment Variables for more information.
To verify connectivity, run:
adc ping
You should see the following response:
Connected to the "api7ee" backend successfully!
Stop API7 Enterprise
If you have done testing API7 Enterprise, you can stop API7 Enterprise using the following command under the api7-ee
directory:
bash run.sh stop
Next Steps
- See Deploy Gateway and Ingress Controller on Kubernetes if you would like to deploy API7 gateways on Kubernetes and use an ingress controller.
- Follow the getting started tutorials to learn more about using API7 Enterprise.
- Deploy API7 Enterprise in a highly available configuration.
- Book a meeting with API7 experts to start using API7 Enterprise in production.