forked from mosip/mosip-ref-impl
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Signed-off-by: Sowmya Ujjappa Banakar <[email protected]>
- Loading branch information
Sowmya Ujjappa Banakar
committed
Jun 5, 2024
1 parent
3cc8358
commit 15d895d
Showing
6 changed files
with
782 additions
and
770 deletions.
There are no files selected for viewing
210 changes: 105 additions & 105 deletions
210
registration-processor/registration-processor-external-integration-service/Dockerfile
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,105 +1,105 @@ | ||
FROM openjdk:11 | ||
|
||
ARG SOURCE | ||
ARG COMMIT_HASH | ||
ARG COMMIT_ID | ||
ARG BUILD_TIME | ||
LABEL source=${SOURCE} | ||
LABEL commit_hash=${COMMIT_HASH} | ||
LABEL commit_id=${COMMIT_ID} | ||
LABEL build_time=${BUILD_TIME} | ||
|
||
#Uncomment below and Comment above line(i.e. FROM openjdk:8) for OS specific (e.g. Alpine OS ) docker base image | ||
#FROM openjdk:8-jdk-alpine | ||
|
||
# can be passed during Docker build as build time environment for github branch to pickup configuration from. | ||
ARG spring_config_label | ||
|
||
# can be passed during Docker build as build time environment for spring profiles active | ||
ARG active_profile | ||
|
||
# can be passed during Docker build as build time environment for config server URL | ||
ARG spring_config_url | ||
|
||
# can be passed during Docker build as build time environment for glowroot | ||
ARG is_glowroot | ||
|
||
# can be passed during Docker build as build time environment for artifactory URL | ||
ARG artifactory_url | ||
|
||
# environment variable to pass active profile such as DEV, QA etc at docker runtime | ||
ENV active_profile_env=${active_profile} | ||
|
||
# environment variable to pass github branch to pickup configuration from, at docker runtime | ||
ENV spring_config_label_env=${spring_config_label} | ||
|
||
# environment variable to pass github branch to pickup configuration from, at docker runtime | ||
ENV spring_config_label_env=${spring_config_label} | ||
|
||
# environment variable to pass glowroot, at docker runtime | ||
ENV is_glowroot_env=${is_glowroot} | ||
|
||
# environment variable to pass artifactory url, at docker runtime | ||
ENV artifactory_url_env=${artifactory_url} | ||
|
||
# can be passed during Docker build as build time environment for github branch to pickup configuration from. | ||
ARG container_user=mosip | ||
|
||
# can be passed during Docker build as build time environment for github branch to pickup configuration from. | ||
ARG container_user_group=mosip | ||
|
||
# can be passed during Docker build as build time environment for github branch to pickup configuration from. | ||
ARG container_user_uid=1001 | ||
|
||
# can be passed during Docker build as build time environment for github branch to pickup configuration from. | ||
ARG container_user_gid=1001 | ||
|
||
# install packages and create user | ||
RUN apt-get -y update \ | ||
&& apt-get install -y unzip \ | ||
&& groupadd -g ${container_user_gid} ${container_user_group} \ | ||
&& useradd -u ${container_user_uid} -g ${container_user_group} -s /bin/sh -m ${container_user} | ||
|
||
# set working directory for the user | ||
WORKDIR /home/${container_user} | ||
|
||
ENV work_dir=/home/${container_user} | ||
|
||
ARG loader_path=${work_dir}/additional_jars/ | ||
|
||
RUN mkdir -p ${loader_path} | ||
|
||
ENV loader_path_env=${loader_path} | ||
|
||
# change volume to whichever storage directory you want to use for this container. | ||
VOLUME $work_dir/logs | ||
|
||
EXPOSE 8201 | ||
|
||
# copying shaded jar into docker image | ||
ADD ./target/*.jar ./target/ | ||
|
||
RUN find target/ -regextype posix-extended -regex '.*registration-processor-external-integration-service-[0-9\.]+[-A-Za-z0-9]*\.jar' "-print0" | xargs "-0" cp -t ./ \ | ||
&& rm -rf ./target \ | ||
&& rm -rf original*.jar \ | ||
&& rm -rf *-sources.jar \ | ||
&& rm -rf *-javadoc.jar \ | ||
&& mv *.jar registration-processor-external-integration-service.jar | ||
|
||
# change permissions of file inside working dir | ||
RUN chown -R ${container_user}:${container_user} /home/${container_user} | ||
|
||
# select container user for all tasks | ||
USER ${container_user_uid}:${container_user_gid} | ||
|
||
CMD if [ "$is_glowroot_env" = "present" ]; then \ | ||
wget "${artifactory_url_env}"/artifactory/libs-release-local/io/mosip/testing/glowroot.zip ; \ | ||
unzip glowroot.zip ; \ | ||
rm -rf glowroot.zip ; \ | ||
sed -i 's/<service_name>/registration-processor-external-integration-service/g' glowroot/glowroot.properties ; \ | ||
java -Dspring.cloud.config.label="${spring_config_label_env}" -Dspring.profiles.active="${active_profile_env}" -Dspring.cloud.config.uri="${spring_config_url_env}" -jar -javaagent:glowroot/glowroot.jar registration-processor-external-integration-service.jar ; \ | ||
else \ | ||
java -Dspring.cloud.config.label="${spring_config_label_env}" -Dspring.profiles.active="${active_profile_env}" -Dspring.cloud.config.uri="${spring_config_url_env}" -jar registration-processor-external-integration-service.jar ; \ | ||
fi | ||
|
||
#CMD ["java","-Dspring.cloud.config.label=${spring_config_label_env}","-Dspring.profiles.active=${active_profile_env}","-Dspring.cloud.config.uri=${spring_config_url_env}","-jar","registration-processor-external-integration-service.jar"] | ||
FROM eclipse-temurin:21-jre-alpine | ||
|
||
ARG SOURCE | ||
ARG COMMIT_HASH | ||
ARG COMMIT_ID | ||
ARG BUILD_TIME | ||
LABEL source=${SOURCE} | ||
LABEL commit_hash=${COMMIT_HASH} | ||
LABEL commit_id=${COMMIT_ID} | ||
LABEL build_time=${BUILD_TIME} | ||
|
||
#Uncomment below and Comment above line(i.e. FROM openjdk:8) for OS specific (e.g. Alpine OS ) docker base image | ||
#FROM openjdk:8-jdk-alpine | ||
|
||
# can be passed during Docker build as build time environment for github branch to pickup configuration from. | ||
ARG spring_config_label | ||
|
||
# can be passed during Docker build as build time environment for spring profiles active | ||
ARG active_profile | ||
|
||
# can be passed during Docker build as build time environment for config server URL | ||
ARG spring_config_url | ||
|
||
# can be passed during Docker build as build time environment for glowroot | ||
ARG is_glowroot | ||
|
||
# can be passed during Docker build as build time environment for artifactory URL | ||
ARG artifactory_url | ||
|
||
# environment variable to pass active profile such as DEV, QA etc at docker runtime | ||
ENV active_profile_env=${active_profile} | ||
|
||
# environment variable to pass github branch to pickup configuration from, at docker runtime | ||
ENV spring_config_label_env=${spring_config_label} | ||
|
||
# environment variable to pass github branch to pickup configuration from, at docker runtime | ||
ENV spring_config_label_env=${spring_config_label} | ||
|
||
# environment variable to pass glowroot, at docker runtime | ||
ENV is_glowroot_env=${is_glowroot} | ||
|
||
# environment variable to pass artifactory url, at docker runtime | ||
ENV artifactory_url_env=${artifactory_url} | ||
|
||
# can be passed during Docker build as build time environment for github branch to pickup configuration from. | ||
ARG container_user=mosip | ||
|
||
# can be passed during Docker build as build time environment for github branch to pickup configuration from. | ||
ARG container_user_group=mosip | ||
|
||
# can be passed during Docker build as build time environment for github branch to pickup configuration from. | ||
ARG container_user_uid=1002 | ||
|
||
# can be passed during Docker build as build time environment for github branch to pickup configuration from. | ||
ARG container_user_gid=1001 | ||
|
||
# install packages and create user | ||
RUN apk -q update \ | ||
&& apk add -q unzip wget \ | ||
&& addgroup -g ${container_user_gid} ${container_user_group} \ | ||
&& adduser -s /bin/sh -u ${container_user_uid} -G ${container_user_group} -h /home/${container_user} --disabled-password ${container_user} | ||
|
||
# set working directory for the user | ||
WORKDIR /home/${container_user} | ||
|
||
ENV work_dir=/home/${container_user} | ||
|
||
ARG loader_path=${work_dir}/additional_jars/ | ||
|
||
RUN mkdir -p ${loader_path} | ||
|
||
ENV loader_path_env=${loader_path} | ||
|
||
# change volume to whichever storage directory you want to use for this container. | ||
VOLUME $work_dir/logs | ||
|
||
EXPOSE 8201 | ||
|
||
# copying shaded jar into docker image | ||
ADD ./target/*.jar ./target/ | ||
|
||
RUN find target/ -regextype posix-extended -regex '.*registration-processor-external-integration-service-[0-9\.]+[-A-Za-z0-9]*\.jar' "-print0" | xargs "-0" cp -t ./ \ | ||
&& rm -rf ./target \ | ||
&& rm -rf original*.jar \ | ||
&& rm -rf *-sources.jar \ | ||
&& rm -rf *-javadoc.jar \ | ||
&& mv *.jar registration-processor-external-integration-service.jar | ||
|
||
# change permissions of file inside working dir | ||
RUN chown -R ${container_user}:${container_user} /home/${container_user} | ||
|
||
# select container user for all tasks | ||
USER ${container_user_uid}:${container_user_gid} | ||
|
||
CMD if [ "$is_glowroot_env" = "present" ]; then \ | ||
wget "${artifactory_url_env}"/artifactory/libs-release-local/io/mosip/testing/glowroot.zip ; \ | ||
unzip glowroot.zip ; \ | ||
rm -rf glowroot.zip ; \ | ||
sed -i 's/<service_name>/registration-processor-external-integration-service/g' glowroot/glowroot.properties ; \ | ||
java -Dspring.cloud.config.label="${spring_config_label_env}" -Dspring.profiles.active="${active_profile_env}" -Dspring.cloud.config.uri="${spring_config_url_env}" -jar -javaagent:glowroot/glowroot.jar registration-processor-external-integration-service.jar ; \ | ||
else \ | ||
java -Dspring.cloud.config.label="${spring_config_label_env}" -Dspring.profiles.active="${active_profile_env}" -Dspring.cloud.config.uri="${spring_config_url_env}" -jar registration-processor-external-integration-service.jar ; \ | ||
fi | ||
|
||
#CMD ["java","-Dspring.cloud.config.label=${spring_config_label_env}","-Dspring.profiles.active=${active_profile_env}","-Dspring.cloud.config.uri=${spring_config_url_env}","-jar","registration-processor-external-integration-service.jar"] |
Oops, something went wrong.