aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorwr148d <wr148d@att.com>2020-06-01 16:32:00 -0400
committerwr148d <wr148d@att.com>2020-06-01 16:32:12 -0400
commitad62cb85753c889ba5c163ac7ba5b87f6fe1ded0 (patch)
tree6f82ed5c7152ae2504977834f8df498cc65a8ea8
parentc0b5ae3da32a2ac942781c71684d7466741cee6a (diff)
Containers should not run as root by default
Issue-ID: AAI-2822 Signed-off-by: wr148d <wr148d@att.com> Change-Id: I4a2db1838d1b8238dec06c2a7d839797b27dadce
-rw-r--r--search-data-service-app/src/main/bin/start.sh27
-rw-r--r--search-data-service-app/src/main/docker/Dockerfile29
2 files changed, 15 insertions, 41 deletions
diff --git a/search-data-service-app/src/main/bin/start.sh b/search-data-service-app/src/main/bin/start.sh
index d04362d..c430b0d 100644
--- a/search-data-service-app/src/main/bin/start.sh
+++ b/search-data-service-app/src/main/bin/start.sh
@@ -14,34 +14,9 @@ if [ -z "$KEY_STORE_PASSWORD" ]; then
exit 1
fi
-
-# Changes related to:AAI-2179
-# Change aai search-data container processes to run as non-root on the host
-USER_ID=${LOCAL_USER_ID:-9001}
-GROUP_ID=${LOCAL_GROUP_ID:-9001}
-SD_LOGS=/var/log/onap/AAI-SDB
-
-if [ $(cat /etc/passwd | grep aaiadmin | wc -l) -eq 0 ]; then
-
- groupadd aaiadmin -g ${GROUP_ID} || {
- echo "Unable to create the group id for ${GROUP_ID}";
- exit 1;
- }
- useradd --shell=/bin/bash -u ${USER_ID} -g ${GROUP_ID} -o -c "" -m aaiadmin || {
- echo "Unable to create the user id for ${USER_ID}";
- exit 1;
- }
-fi;
-
-chmod -R 0755 ${MICRO_HOME}
-chown -R aaiadmin:aaiadmin ${MICRO_HOME}
-chown -R aaiadmin:aaiadmin ${AJSC_HOME}
-chown -R aaiadmin:aaiadmin ${SD_LOGS}
-
find ${MICRO_HOME} -name "*.sh" -exec chmod +x {} +
-gosu aaiadmin ln -snf /logs $MICRO_HOME/logs
-JAVA_CMD="exec gosu aaiadmin java";
+JAVA_CMD="exec java";
###
PROPS="-DAJSC_HOME=$AJSC_HOME"
PROPS="$PROPS -DAJSC_CONF_HOME=$AJSC_CONF_HOME"
diff --git a/search-data-service-app/src/main/docker/Dockerfile b/search-data-service-app/src/main/docker/Dockerfile
index 45ef185..a40ae7f 100644
--- a/search-data-service-app/src/main/docker/Dockerfile
+++ b/search-data-service-app/src/main/docker/Dockerfile
@@ -2,6 +2,8 @@ FROM @aai.docker.namespace@/aai-common-@aai.base.image@:@aai.base.image.version@
ARG MICRO_HOME=/opt/app/search-data-service
ARG BIN_HOME=$MICRO_HOME/bin
+ARG SD_LOGS=/var/log/onap/AAI-SDB
+
#AAI-2179 Additional optional steps for Ubuntu
RUN if ((uname -v | grep -i "ubuntu") || ( cat /etc/*release|grep -i "ubuntu") ) ; then \
#####################################
@@ -17,26 +19,23 @@ RUN if ((uname -v | grep -i "ubuntu") || ( cat /etc/*release|grep -i "ubuntu")
JAVA_HOME=usr/lib/jvm/java-8-openjdk-amd64; \
export JAVA_HOME ; \
fi; \
- ##########################################
- #Install gosu if not present
- ##########################################
- if type gosu 2>/dev/null; then \
- echo "skipping gosu installation"; \
- else \
- set -x ; \
- add-apt-repository -y ppa:tianon/gosu; \
- sudo apt-get update; \
- sudo apt-get install gosu; \
- fi;\
fi
# Build up the deployment folder structure
-RUN mkdir -p $MICRO_HOME $USERS_HOME /logs
+RUN mkdir -p $MICRO_HOME $USERS_HOME /logs $MICRO_HOME/bundleconfig/etc $BIN_HOME $SD_LOGS
+
+RUN groupadd aaiadmin -g 1000
+RUN adduser -u 1000 -h /opt/aaihome/aaiadmin -S -D -G aaiadmin -s /bin/bash aaiadmin
+
WORKDIR $MICRO_HOME
-RUN mkdir -p $MICRO_HOME/bundleconfig/etc
-RUN mkdir -p $BIN_HOME
+
+RUN chown -R aaiadmin:aaiadmin $MICRO_HOME $MICRO_HOME/logs $SD_LOGS
+
# copy everything from search-data-service-app/target/docker/nexus3.onap.org/10003/onap/search-data-service/latest/build/maven/search-data-service-app
-COPY /maven/search-data-service-app/ .
+COPY --chown=aaiadmin:aaiadmin /maven/search-data-service-app/ .
+
+USER aaiadmin
+
RUN chmod -R 755 $BIN_HOME/* $MICRO_HOME/*
RUN ln -snf /logs $MICRO_HOME/logs