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"]
Comments
0 comments
Article is closed for comments.