FROM almalinux:9 ######### AppDynamics Workflow ######### RUN mkdir -p /opt/appdynamics/dotnet ADD $ARTIFACT_REPOSITORY/appdynamics/libappdprofiler.so /opt/appdynamics/dotnet/ ADD $ARTIFACT_REPOSITORY/appdynamics/libappdprofiler_glibc.so /opt/appdynamics/dotnet/ ADD $ARTIFACT_REPOSITORY/appdynamics/libappdprofiler_musl.so /opt/appdynamics/dotnet/ ADD $ARTIFACT_REPOSITORY/appdynamics/AppDynamics.Agent.netstandard.dll /opt/appdynamics/dotnet/ # It is possible to configure .NET agent using AppDynamicsConfig.json configuration file instead of environment variables # ADD AppDynamicsConfig.json /opt/appdynamics/dotnet/ # Or, use Env Vars for configuration # Configure connection to the controller #ENV APPDYNAMICS_CONTROLLER_HOST_NAME=controller.saas.appdynamics.com #ENV APPDYNAMICS_CONTROLLER_PORT=443 #ENV APPDYNAMICS_CONTROLLER_SSL_ENABLED=true #ENV APPDYNAMICS_AGENT_ACCOUNT_NAME=account-name #ENV APPDYNAMICS_AGENT_ACCOUNT_ACCESS_KEY=access-key # Configure application identity in AppDynamics #ENV APPDYNAMICS_AGENT_APPLICATION_NAME="My Application" #ENV APPDYNAMICS_AGENT_TIER_NAME="Sample Tier" #ENV APPDYNAMICS_AGENT_REUSE_NODE_NAME=true #ENV APPDYNAMICS_AGENT_REUSE_NODE_NAME_PREFIX="Instance" ######### Multiplexer Workflow ######### ### Set $REPLACE_BASE_DIR to where the various components will be installed, such as "/home/charlotteLee" COPY $ARTIFACT_REPOSITORY/datadog/Datadog.Trace.ClrProfiler.Native.so $REPLACE_BASE_PATH/datadog/Datadog.Trace.ClrProfiler.Native.so COPY $ARTIFACT_REPOSITORY/datadog/loader*.conf $REPLACE_BASE_PATH/datadog/loader.conf ######### vFunction Workflow ######### ### Set $REPLACE_BASE_DIR to where the various components will be installed, such as "/home/charlotteLee" # See descriptions in https://kb.vfunction.com/installations/configurable-settings/mono-dynamic-agent/dotnet/linux ENV VF_CONTROLLER_DEFAULT_DOTNET_CONTROLLER_NAME="CHANGE_ME" ENV VF_CONTROLLER_DEFAULT_DOTNET_CONTROLLER_HOST="CHANGE_ME" ENV VF_CONTROLLER_DEFAULT_DOTNET_CONTROLLER_ORG_ID="CHANGE_ME" ENV VF_CONTROLLER_DEFAULT_DOTNET_CONTROLLER_APP_ID="CHANGE_ME" ENV VF_CONTROLLER_DEFAULT_DOTNET_CONTROLLER_CLIENT_ID="CHANGE_ME" ENV VF_CONTROLLER_DEFAULT_DOTNET_CONTROLLER_CLIENT_SECRET="CHANGE_ME" ENV VF_CONTROLLER_DEFAULT_DOTNET_CONTROLLER_INSTANCE_ID="CHANGE_ME" ENV VF_AGENT_CONF_LOCATION=$REPLACE_BASE_DIR/vfunction/etc/sysconfig/vfunction/agent/instances/default-dotnet/conf.json ENV DOTNET_TailCallOpt=0 COPY $ARTIFACT_REPOSITORY/vfunction/vfunction-controller-sudo-less-installation*.tgz $REPLACE_BASE_PATH/vfunction-controller-sudo-less-installation.tgz COPY $ARTIFACT_REPOSITORY/vfunction/installation.yaml $REPLACE_BASE_PATH/ RUN cd $REPLACE_BASE_PATH && tar -xvzf $REPLACE_BASE_PATH/vfunction-controller-sudo-less-installation.tgz && \ rm -f $REPLACE_BASE_PATH/vfunction-controller-sudo-less-installation.tgz && \ mv $REPLACE_BASE_PATH/installation.yaml $REPLACE_BASE_PATH/vfunction/etc/sysconfig/vfunction/installation/instances/default-dotnet/ && \ bash $REPLACE_BASE_PATH/vfunction/opt/vfunction/controller-installation/install.sh -i default-dotnet && \ chmod -R 777 $REPLACE_BASE_PATH/vfunction ######### Start the Container ######### ### Set $REPLACE_BASE_DIR to where the various components will be installed, such as "/home/charlotteLee" ### Set RUN_APP as workflow to start the application, such as "dotnet run" CMD ["/bin/bash", "-c", "export CORECLR_PROFILER_PATH=$REPLACE_BASE_PATH/datadog/Datadog.Trace.ClrProfiler.Native.so;export CORECLR_ENABLE_PROFILING=1;export CORECLR_PROFILER={846F5F1C-F9AE-4B07-969E-05C26BC060D8};$RUN_APP"]