Other Docker-Based Platform

If you're on a container-based platform not explicitly listed, you can run the Akita Agent in the same Docker container that runs your service. The Akita Agent will automatically gather all the data you need and surface it in the Akita app, so you can easily see what your system is doing.

After installing the Akita Agent in your Docker container, you can modify your entry point to call the Agent, which will in turn start your service and capture data for the lifetime of the service process.

Below are instructions for installing and running the Akita Agent as a wrapper.

  1. Create an Akita Project
  2. Generate an API key for the Akita Agent
  3. Install the Akita Agent
  4. Verify that the Akita Agent is working

🚧

Akita Account Required

You must have an Akita account to use Akita. You can create an account here..

Create a project

Log-in to the Akita App, and go to the Settings page.

Enter a project name and click "Create Project". We suggest naming the project after your app or deployment stack.

2254

Give your project a name that's easy to remember – you'll need it later, when you start the Akita Agent on the CLI.

Generate API key

On the same Settings page, locate and click the “API Keys” tab. Click the “Set up the Akita client” button. Copy your API key secret into your favorite password manager or somewhere else you can easily access it. Also note your API key, as you will need it later.

780

Install Agent in container

Install the Akita Agent during your container build process by running the install script below, adding it to your Dockerfile.

RUN bash -c "$(curl -L https://releases.akita.software/scripts/install_akita.sh)"

Next, change the CMD directive in your Dockerfile to run the Akita CLI and start your previous entry point as a subprocess:

CMD ["/usr/local/bin/akita", "apidump", "--project", "<your project name>", \
     "-u", "root", "-c", "<your normal commnand line>", \
     "--rate-limit", "1000"]

If you use ENTRYPOINT instead of CMD, please update that directive instead:

...
ENTRYPOINT ["/usr/local/bin/akita", "apidump",
            "-c", "normal server command line here", 
            "-u", "root", "--project", "your project name" ]

This will install the Akita Agent binary in your container at build time, for example in its usual location at /usr/local/bin/akita. And it will change the entry point of the container to call the akita apidump command, with the normal server command line specified using the -c option.

Verify

In the Akita web console, check out the incoming data on the Model page. You should see a map of your API being generated as the Akita Agent gathers data.

Then check out the Metrics and Errors page to get real-time information on the health of your app or service.