Self-hosting Apidog
  1. Installation
Self-hosting Apidog
  • Installation
    • Installation Overview
    • Obtaining Apidog On-premises License
    • Running Apidog on Docker
    • Running Apidog on Kubernetes
    • Running Apidog Multi-Container Deployment without Kubernetes
    • Admin Panel
    • Installing Apidog Client
    • Backing up Apidog
    • Renewing Apidog
    • Updating Apidog
    • Supported browsers
    • Privacy
  • Configuration
    • Environment Variables
    • Configuring the application database
    • Configuring the application storage service
    • Using LDAP for authentication
    • Using OKTA for authentication
    • Using OAuth2.0 for authentication
  • Apidog API (coming soon)
  • Troubleshooting
    • Troubleshooting
    • FAQ
  1. Installation

Running Apidog on Kubernetes

This is for running Apidog on Kubernetes. If you're trying to run Apidog on Docker, check out these instuctions.

Preparing for deployment#

Prerequisites:
Access Token for the private Docker Hub repository (obtained via email)
Configured application database and storage service following Configuring the application database and Configuring the application storage service.
Preparing the Docker Image:
1.
Log in to Docker Hub:
docker login --username=apidog docker.io
2.
Pull the latest Docker image:
docker pull docker.io/apidog/apidog-ee:<image_tag>

Running Apidog using deployment YAML file#

1.
Modify the provided Kubernetes Deployment YAML file with your specific information:
Replace <image_tag> with the desired image tag.
Fill in the environment variables with your database and storage service configurations.
Update the BASE_URL variable with the IP address or domain name for your API service.
2.
Deploy the Apidog application using the modified YAML file. kubectl apply -f deployment.yaml

Running Apidog using Helm chart#

Due to the diverse range of customized environments we support, we provide specific templates for deployment, service, and values. These templates are included in the following Helm chart structure:

Chart.yaml#

values.yaml#

templates/deployment.yaml#

templates/service.yaml#

Installing the Chart#

After all previous steps, you can now install the chart using the helm install command:
This will replace all the placeholders with values defined in values.yaml and generate Kubernetes manifests accordingly.

Integrating with Vault service#

If you are using Vault service like HashiCorp Vault to manage secret environment variables, modify the chart's entrypoint and command as follows:

Verify successful startup#

Execute the following command in the container:
The application has started successfully if the output includes lines similar to the following:
...
[WARN] This Redis server's `default` user does not require a password, but a password was supplied
connect succeeded! value is  null
Executing (default): SELECT 1+1 AS result
...
Connecting to 127.0.0.1:3000 (127.0.0.1:3000)
remote file exists
Connecting to 127.0.0.1 (127.0.0.1:80)
remote file exists
Connecting to 127.0.0.1 (127.0.0.1:80)
remote file exists 
If the output differs, the application has not started successfully or is still starting. The typical time for a graceful startup is 30 seconds, but this may vary depending on the performance of the hardware.

Run the application#

To access the service, follow the instructions below:

For web access:#

Open your web browser and navigate to the URL specified by the BASE_URL environment variable. This URL typically follows the format https://api.example.com/web or http://192.168.0.13/web.

For desktop application access:#

Upon launching the application for the first time, you will be prompted to enter the Server Base URL. Ensure this URL does not include a trailing slash.

Additional Resources#

Environment variables: Configuration Guide
Troubleshooting: Troubleshooting Guide
Previous
Running Apidog on Docker
Next
Running Apidog Multi-Container Deployment without Kubernetes
Built with