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
- Download the latest vFunction Sudoless Controller Installation TGZ
- Create a folder for vFunction artifacts in the Artifact Repository accessible by the Docker Build
- Add the vFunction Sudoless Controller Installation TGZ to the Artifact Repository
- Create a vFunction specific branch to add the vFunction artificats to the Application’s Dockerfile
- 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 /BASE_DIR/vfunction-controller-sudo-less-installation.tgz
############ vFunction Environment Variables ############
### Modify the value to be this Application's Identifier for the VF Server UI, e.g. qa-container
ENV VF_CONTROLLER_DEFAULT_DOTNET_CONTROLLER_NAME=CHANGE_ME
### Modify the value to be the URL of the vFunction Server
ENV VF_CONTROLLER_DEFAULT_DOTNET_CONTROLLER_HOST=CHANGE_ME
### Gather this value from the vFunction Server UI's Learning > Select Controllers > Installation Instructions
ENV VF_CONTROLLER_DEFAULT_DOTNET_CONTROLLER_ORG_ID=CHANGE_ME
### Gather this value from the vFunction Server UI's Learning > Select Controllers > Installation Instructions
ENV VF_CONTROLLER_DEFAULT_DOTNET_CONTROLLER_APP_ID=CHANGE_ME
### Gather this value from the vFunction Server UI's Learning > Select Controllers > Installation Instructions
ENV VF_CONTROLLER_DEFAULT_DOTNET_CONTROLLER_CLIENT_ID=CHANGE_ME
### Gather this value from the vFunction Server UI's Learning > Select Controllers > Installation Instructions
ENV VF_CONTROLLER_DEFAULT_DOTNET_CONTROLLER_CLIENT_SECRET=CHANGE_ME
### Use a unique string for this value, e.g. Containerized, to help the vFunction Server manage when this Container goes up and down
ENV VF_CONTROLLER_DEFAULT_DOTNET_CONTROLLER_INSTANCE_ID=CHANGE_ME
### Use Tags to organize Agents by functionality, environment or other logical groupings
ENV VF_CONTROLLER_DEFAULT_DOTNET_CONTROLLER_TAGS="CHANGE_ME,CHANGE_ME"
ENV VF_AGENT_CONF_LOCATION=/BASE_DIR/vfunction/etc/sysconfig/vfunction/agent/instances/default-dotnet/conf.json
ENV CORECLR_PROFILER_PATH_64=/BASE_DIR/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 /BASE_DIR && tar zxvf /BASE_DIR/vfunction-controller-sudo-less-installation.tgz && \
rm -rf /BASE_DIR/vfunction-controller-sudo-less-installation.tgz && \
bash /BASE_DIR/vfunction/opt/vfunction/controller-installation/install.sh -i default-dotnet -n && \
chmod -R 777 /BASE_DIR/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
- Build and deploy the Application
- Confirm that the Application comes up and functions as expected
- If any issues arise: