Splunk AppDynamics

Golang inside of docker

David_Boardman
Explorer

I'm working through how to build a golang program instrumented with AppDynamics running inside a docker container.

Anyone done this?  I'm encountering problems when the final build is complete - so I'm curious what distro you used to build from.

Labels (1)
Tags (1)
0 Karma
1 Solution

David_Boardman
Explorer

I got this working, although my "solution" was quite a bit contorted.  The thing I had to do was to manually copy some of the shared-libraries into the docker image.  See the following two lines referencing "shared libraries".  Specifically in my './lib/' directory I have libgcc_s.so.1 and libstdc++.so.6.  These I got from a stock Ubuntu:14.04 version and copied them into my build directory.

On top of this I had to manually copy the AppDynamics shared-library inside the container also (see Dockerfile below).

---------------------

Here's my Dockerfile:

FROM busybox:ubuntu-14.04

 

# Add the binary

COPY src/app/bubbagump /app/bubbagump

 

# Copy in supporting shared libraries (ripped from Ubuntu (vagrant) )

COPY lib/ /lib

 

# Copy AppDynamics shared library

COPY src/appdynamics/sdk_lib/lib/libappdynamics.so /lib/

 

# Copy in the certificate file

 

COPY src/appdynamics/ca-bundle.crt /app/

 

WORKDIR /app

  

CMD ["/app/bubbagump"]

View solution in original post

0 Karma

Kyle_Furlong
Contributor

Hi David,

Could you share your build process and the errors you're encountering?

Thanks,

Kyle

0 Karma

David_Boardman
Explorer

I got this working, although my "solution" was quite a bit contorted.  The thing I had to do was to manually copy some of the shared-libraries into the docker image.  See the following two lines referencing "shared libraries".  Specifically in my './lib/' directory I have libgcc_s.so.1 and libstdc++.so.6.  These I got from a stock Ubuntu:14.04 version and copied them into my build directory.

On top of this I had to manually copy the AppDynamics shared-library inside the container also (see Dockerfile below).

---------------------

Here's my Dockerfile:

FROM busybox:ubuntu-14.04

 

# Add the binary

COPY src/app/bubbagump /app/bubbagump

 

# Copy in supporting shared libraries (ripped from Ubuntu (vagrant) )

COPY lib/ /lib

 

# Copy AppDynamics shared library

COPY src/appdynamics/sdk_lib/lib/libappdynamics.so /lib/

 

# Copy in the certificate file

 

COPY src/appdynamics/ca-bundle.crt /app/

 

WORKDIR /app

  

CMD ["/app/bubbagump"]

0 Karma
Get Updates on the Splunk Community!

Stay Connected: Your Guide to July Tech Talks, Office Hours, and Webinars!

What are Community Office Hours?Community Office Hours is an interactive 60-minute Zoom series where ...

Updated Data Type Articles, Anniversary Celebrations, and More on Splunk Lantern

Splunk Lantern is a Splunk customer success center that provides advice from Splunk experts on valuable data ...

A Prelude to .conf25: Your Guide to Splunk University

Heading to Boston this September for .conf25? Get a jumpstart by arriving a few days early for Splunk ...