Docker and other container environments: Install C SDK

EOL NOTICE

From April 2022, we don't support the C SDK capability. For more details, see our Support Forum post.

You can install the New Relic C SDK on a Docker container (or other container) to monitor one or more of your C applications.

Install C SDK in container environment

Requirements:

Caution

Data transmitted from the agent to the daemon is not encrypted. We recommend only using a private network connection between the agent and daemon. This only applies when the agent and daemon are running on different hosts.

To install C SDK for a container environment, we recommend installing the C SDK daemon on a separate docker container:

  1. Install the daemon by cloning the C SDK repository and building the daemon. This is done most effectively via the command make daemon. See the README.md for further details.

    If you are using Docker, you can use the C SDK daemon image on Dockerhub.

  2. Start the daemon using --address and --watchdog-foreground arguments. The --address argument is used to set a port where the daemon is accepting connections. The --watchdog-foreground argument ensures that the daemon runs in the foreground.

Then, use the C SDK in your containerized application:

  1. Follow the steps to add the C SDK to your code.
  2. Point the C SDK to the daemon by adding a newrelic_init call and passing a valid address argument. The value for this argument must be HOST:PORT, where HOST is the name or IP address of the host where the daemon is running, and PORT is the port number where the daemon is listening.