Install - .NET Agent on a Containerized App running a Linux image


Installation Wizard

To help with the installation process, vFunction offers an Installation Wizard. This Wizard provides additional information about the Prerequisites as well as the Required and Optional Settings for installing the vFunction Server and Agents. This Wizard also walks you through each step in the Installation process.


Installation Steps

  1. Download the latest vFunction Sudoless Controller Installation TGZ
  2. Create a folder for vFunction artifacts in the Artifact Repository accessible by the Docker Build
  3. Add the vFunction Sudoless Controller Installation TGZ to the Artifact Repository
  4. Create a vFunction specific branch to add the vFunction artificats to the Application’s Dockerfile
  5. Copy-and-paste the blocks below into the Application’s existing Dockerfile. Modify the the blocks based on the instructions in the Comments
############ vFunction COPY workflow ############

### Find-and-replace ARTIFACT_REPOSITORY with the actual location
### Find-and-replace all instances of BASE_DIR with the desired location on the Container, such as /tmp
COPY /ARTIFACT_REPOSITORY/vfunction/vfunction-controller-sudo-less-installation*.tgz /tmp/vfunction-controller-sudo-less-installation.tgz

############ vFunction Environment Variables ############
### Replace the $CHANGE_ME values with the Required Configuration Settings. For detailed Settings explanations, see:
### https://kb.vfunction.com/installations/configurable-settings/mono-dynamic-agent/dotnet/linux
ARG VF_CONTROLLER_DEFAULT_DOTNET_CONTROLLER_NAME="$CHANGE_ME"
ARG VF_CONTROLLER_DEFAULT_DOTNET_CONTROLLER_HOST="$CHANGE_ME"
ARG VF_CONTROLLER_DEFAULT_DOTNET_CONTROLLER_APP_ID="$CHANGE_ME"
ARG VF_CONTROLLER_DEFAULT_DOTNET_CONTROLLER_ORG_ID="$CHANGE_ME"
ARG VF_CONTROLLER_DEFAULT_DOTNET_CONTROLLER_CLIENT_ID="$CHANGE_ME"
ARG VF_CONTROLLER_DEFAULT_DOTNET_CONTROLLER_CLIENT_SECRET="$CHANGE_ME"
ARG VF_CONTROLLER_DEFAULT_DOTNET_CONTROLLER_INSTANCE_ID="$CHANGE_ME"
ARG VF_CONTROLLER_DEFAULT_DOTNET_CONTROLLER_TAG="$CHANGE_ME"

ENV VF_AGENT_CONF_LOCATION=/tmp/vfunction/etc/sysconfig/vfunction/agent/instances/default-dotnet/conf.json
ENV CORECLR_PROFILER_PATH_64=/tmp/vfunction/opt/vfunction/agent/libvfagent.net.so
ENV CORECLR_ENABLE_PROFILING=1
ENV CORECLR_PROFILER={cd7d4b53-96c8-4552-9c11-6e41df8eab8a}
ENV DOTNET_TailCallOpt=0

############ vFunction RUN workflow ############

RUN cd /tmp && tar -xvzf /tmp/vfunction-controller-sudo-less-installation.tgz  && \
   rm -rf /tmp/vfunction-controller-sudo-less-installation.tgz    && \
   bash /tmp/vfunction/opt/vfunction/controller-installation/install.sh -i default-dotnet -n    && \
   chmod -R 777 /tmp/vfunction  && \
   ### Replace APP_USER:APP_GROUP with the user and user's group that runs the Application
   chown -R APP_USER:APP_GROUP /BASE_DIR/vfunction                    
  1. Build and deploy the Application
  2. Confirm that the Application comes up and functions as expected
  3. If any issues arise: