aboutsummaryrefslogtreecommitdiffstats
path: root/vnfs/DAaaS/microservices/visualization-operator/build
diff options
context:
space:
mode:
Diffstat (limited to 'vnfs/DAaaS/microservices/visualization-operator/build')
-rw-r--r--vnfs/DAaaS/microservices/visualization-operator/build/Dockerfile15
-rwxr-xr-xvnfs/DAaaS/microservices/visualization-operator/build/bin/entrypoint12
-rwxr-xr-xvnfs/DAaaS/microservices/visualization-operator/build/bin/user_setup13
3 files changed, 40 insertions, 0 deletions
diff --git a/vnfs/DAaaS/microservices/visualization-operator/build/Dockerfile b/vnfs/DAaaS/microservices/visualization-operator/build/Dockerfile
new file mode 100644
index 00000000..2ac838fc
--- /dev/null
+++ b/vnfs/DAaaS/microservices/visualization-operator/build/Dockerfile
@@ -0,0 +1,15 @@
+FROM registry.access.redhat.com/ubi7/ubi-minimal:latest
+
+ENV OPERATOR=/usr/local/bin/visualization-operator \
+ USER_UID=1001 \
+ USER_NAME=visualization-operator
+
+# install operator binary
+COPY build/_output/bin/visualization-operator ${OPERATOR}
+
+COPY build/bin /usr/local/bin
+RUN /usr/local/bin/user_setup
+
+ENTRYPOINT ["/usr/local/bin/entrypoint"]
+
+USER ${USER_UID}
diff --git a/vnfs/DAaaS/microservices/visualization-operator/build/bin/entrypoint b/vnfs/DAaaS/microservices/visualization-operator/build/bin/entrypoint
new file mode 100755
index 00000000..f862b484
--- /dev/null
+++ b/vnfs/DAaaS/microservices/visualization-operator/build/bin/entrypoint
@@ -0,0 +1,12 @@
+#!/bin/sh -e
+
+# This is documented here:
+# https://docs.openshift.com/container-platform/3.11/creating_images/guidelines.html#openshift-specific-guidelines
+
+if ! whoami &>/dev/null; then
+ if [ -w /etc/passwd ]; then
+ echo "${USER_NAME:-visualization-operator}:x:$(id -u):$(id -g):${USER_NAME:-visualization-operator} user:${HOME}:/sbin/nologin" >> /etc/passwd
+ fi
+fi
+
+exec ${OPERATOR} $@
diff --git a/vnfs/DAaaS/microservices/visualization-operator/build/bin/user_setup b/vnfs/DAaaS/microservices/visualization-operator/build/bin/user_setup
new file mode 100755
index 00000000..1e36064c
--- /dev/null
+++ b/vnfs/DAaaS/microservices/visualization-operator/build/bin/user_setup
@@ -0,0 +1,13 @@
+#!/bin/sh
+set -x
+
+# ensure $HOME exists and is accessible by group 0 (we don't know what the runtime UID will be)
+mkdir -p ${HOME}
+chown ${USER_UID}:0 ${HOME}
+chmod ug+rwx ${HOME}
+
+# runtime user will need to be able to self-insert in /etc/passwd
+chmod g+rw /etc/passwd
+
+# no need for this script to remain in the image after running
+rm $0