Install Applicare SingleAgent in a Java Jar Application Docker Container

To install ApplicareSingleAgent in Java Jar application docker container, add the below script based on the OS after the "FROM" command to the dockerfile.

Debian/Ubuntu

# Applicare Agent configuration RUN apt-get update \ && apt-get install -y curl unzip \ && rm -rf /var/lib/apt/lists/* RUN mkdir /usr/local/ApplicareSingleAgentLinux WORKDIR /usr/local/ApplicareSingleAgentLinux RUN curl CONTROLLER_PROTOCOL://CONTROLLER_IP:CONTROLLER_PORT/applicare/standalone?filename=ApplicareSingleAgentLinux >ApplicareSingleAgentLinux.zip RUN unzip ApplicareSingleAgentLinux.zip RUN ["rm", "-frv", "/usr/local/ApplicareSingleAgentLinux/ApplicareSingleAgentLinux.zip"] RUN chmod -R 755 /usr/local/ApplicareSingleAgentLinux ENV JAVA_OPTS="-noverify -Dserver.name=SERVER_NAME -javaagent:/usr/local/ApplicareSingleAgentLinux/applicare-aspects.jar=verbosity=0,logfile=false,norestart-intellitrace=false -Darcturus_home=/usr/local/ApplicareSingleAgentLinux -Djava.library.path=.;/usr/local/ApplicareSingleAgentLinux/bin -Dlogback.configurationFile=/usr/local/ApplicareSingleAgentLinux/logback/logback.xml"

Replace the following values in the above script

CONTROLLER_PROTOCOL -> http (or) https

CONTROLLER_IP -> Applicare Controller IP

CONTROLLER_PORT -> Applicare Controller Port

SERVER_NAME -> Add custom server name

Modify the ENTRYPOINT or CMD line in the Dockerfile

Original Entrypoint: ENTRYPOINT ["java", "-jar", "rest-service.jar"]

Updated Entrypoint: ENTRYPOINT ["sh", "-c", "exec java $JAVA_OPTS -jar rest-service.jar"]

Example:

# Java 8 lightweight runtime
FROM eclipse-temurin:8-jre

# Applicare Agent configuration
RUN apt-get update \
&& apt-get install -y curl unzip \
&& rm -rf /var/lib/apt/lists/*
RUN mkdir /usr/local/ApplicareSingleAgentLinux
WORKDIR /usr/local/ApplicareSingleAgentLinux
RUN curl http://192.168.0.2:8880/applicare/standalone?filename=ApplicareSingleAgentLinux >ApplicareSingleAgentLinux.zip
RUN unzip ApplicareSingleAgentLinux.zip
RUN ["rm", "-frv", "/usr/local/ApplicareSingleAgentLinux/ApplicareSingleAgentLinux.zip"]
RUN chmod -R 755 /usr/local/ApplicareSingleAgentLinux
ENV JAVA_OPTS="-noverify -Dserver.name=rest-api -javaagent:/usr/local/ApplicareSingleAgentLinux/applicare-aspects.jar=verbosity=0,logfile=false,norestart-intellitrace=false -Darcturus_home=/usr/local/ApplicareSingleAgentLinux -Djava.library.path=.;/usr/local/ApplicareSingleAgentLinux/bin -Dlogback.configurationFile=/usr/local/ApplicareSingleAgentLinux/logback/logback.xml"

# Set working directory
WORKDIR /app
# Copy the JAR
COPY rest-service-0.0.1-SNAPSHOT.jar rest-service-0.0.1-SNAPSHOT.jar
# Expose application port
EXPOSE 8080

# Run the application
ENTRYPOINT ["sh", "-c", "exec java $JAVA_OPTS -jar rest-service-0.0.1-SNAPSHOT.jar"]

RHEL/CentOS

# Applicare Agent configuration RUN yum install -y curl unzip \ && yum clean all RUN mkdir /usr/local/ApplicareSingleAgentLinux WORKDIR /usr/local/ApplicareSingleAgentLinux RUN curl CONTROLLER_PROTOCOL://CONTROLLER_IP:CONTROLLER_PORT/applicare/standalone?filename=ApplicareSingleAgentLinux >ApplicareSingleAgentLinux.zip RUN unzip ApplicareSingleAgentLinux.zip RUN ["rm", "-frv", "/usr/local/ApplicareSingleAgentLinux/ApplicareSingleAgentLinux.zip"] RUN chmod -R 755 /usr/local/ApplicareSingleAgentLinux ENV JAVA_OPTS="-noverify -Dserver.name=SERVER_NAME -javaagent:/usr/local/ApplicareSingleAgentLinux/applicare-aspects.jar=verbosity=0,logfile=false,norestart-intellitrace=false -Darcturus_home=/usr/local/ApplicareSingleAgentLinux -Djava.library.path=.;/usr/local/ApplicareSingleAgentLinux/bin -Dlogback.configurationFile=/usr/local/ApplicareSingleAgentLinux/logback/logback.xml"

Replace the following values in the above script

CONTROLLER_PROTOCOL -> http (or) https

CONTROLLER_IP -> Applicare Controller IP

CONTROLLER_PORT -> Applicare Controller Port

SERVER_NAME -> Add custom server name

Modify the ENTRYPOINT or CMD line in the Dockerfile

Original Entrypoint: ENTRYPOINT ["java", "-jar", "rest-service.jar"]

Updated Entrypoint: ENTRYPOINT ["sh", "-c", "exec java $JAVA_OPTS -jar rest-service.jar"]

Example:


#  Red Hat UBI
FROM registry.access.redhat.com/ubi8/openjdk-8-runtime
# Applicare Agent configuration
RUN yum install -y curl unzip \
&& yum clean all
RUN mkdir -p /usr/local/ApplicareSingleAgentLinux
WORKDIR /usr/local/ApplicareSingleAgentLinux
RUN curl "http://192.168.0.2:8880/applicare/standalone?filename=ApplicareSingleAgentLinux" \
   -o ApplicareSingleAgentLinux.zip
RUN unzip ApplicareSingleAgentLinux.zip \
&& rm -f ApplicareSingleAgentLinux.zip \
&& chmod -R 755 /usr/local/ApplicareSingleAgentLinux
ENV JAVA_OPTS="-noverify -Dserver.name=rest-api \
-javaagent:/usr/local/ApplicareSingleAgentLinux/applicare-aspects.jar=verbosity=0,logfile=false,norestart-intellitrace=false \
-Darcturus_home=/usr/local/ApplicareSingleAgentLinux \
-Djava.library.path=.;/usr/local/ApplicareSingleAgentLinux/bin \
-Dlogback.configurationFile=/usr/local/ApplicareSingleAgentLinux/logback/logback.xml"

WORKDIR /app
COPY rest-service-0.0.1-SNAPSHOT.jar rest-service-0.0.1-SNAPSHOT.jar
EXPOSE 8080
ENTRYPOINT ["sh", "-c", "exec java $JAVA_OPTS -jar rest-service-0.0.1-SNAPSHOT.jar"]

Was this article helpful?

Votes and follows are kept by Zendesk, so they need a Help Center account. These buttons open this article there.

Opens Zendesk · needs internet and sign-in

Still stuck? Contact support