summaryrefslogtreecommitdiffstats
path: root/components/pm-subscription-handler/Dockerfile
diff options
context:
space:
mode:
authorefiacor <fiachra.corcoran@est.tech>2019-11-06 11:08:54 +0000
committerefiacor <fiachra.corcoran@est.tech>2019-12-02 10:31:56 +0000
commit9b53268341d1022688a431f5a01e38cb26b8f610 (patch)
tree9965ec996fc8e97ab3f3cad9712324c52a2daf9a /components/pm-subscription-handler/Dockerfile
parenta8a31129d5e32fccdbf123a99043b32077453cdf (diff)
Initial commit for PMSH
Signed-off-by: efiacor <fiachra.corcoran@est.tech> Issue-ID: DCAEGEN2-1837 Change-Id: I3b7d7d379df68f0f5984a3c4e0faa9c8ca0bcdf8
Diffstat (limited to 'components/pm-subscription-handler/Dockerfile')
-rw-r--r--components/pm-subscription-handler/Dockerfile55
1 files changed, 55 insertions, 0 deletions
diff --git a/components/pm-subscription-handler/Dockerfile b/components/pm-subscription-handler/Dockerfile
new file mode 100644
index 00000000..e1dd16fe
--- /dev/null
+++ b/components/pm-subscription-handler/Dockerfile
@@ -0,0 +1,55 @@
+# ============LICENSE_START===================================================
+# Copyright (C) 2019 Nordix Foundation.
+# ============================================================================
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+# SPDX-License-Identifier: Apache-2.0
+# ============LICENSE_END=====================================================
+
+FROM python:3.7-slim-buster
+MAINTAINER lego@est.tech
+
+ENV PMSHUSER=pmsh \
+ APPDIR="/opt/app/pmsh" \
+ # turn on file based EELF logging
+ PROD_LOGGING=1 \
+ # set PATH & PYTHONPATH vars
+ PATH=/usr/local/lib/python3.7/bin:$PATH:$APPDIR/bin \
+ PYTHONPATH=/usr/local/lib/python3.7/site-packages:./mod:./:$PYTHONPATH:$APPDIR/bin \
+ REQUESTS_CA_BUNDLE=/etc/ssl/certs/ca-certificates.crt
+
+WORKDIR $APPDIR
+
+ # add non root user & group
+RUN addgroup --system $PMSHUSER && adduser --ingroup $PMSHUSER --system $PMSHUSER && \
+ # create logs dir and change permissions
+ mkdir -p /var/log/ONAP/$PMSHUSER/logs && \
+ chmod a+w /var/log/ONAP/$PMSHUSER/logs
+
+COPY setup.py ./
+COPY requirements.txt ./
+COPY ./pmsh_service ./bin/
+
+ # run the pip install
+RUN pip install --upgrade pip && \
+ pip install -r requirements.txt && \
+ pip install -e . && \
+ # change own & perms on entrypoint
+ chown -R $PMSHUSER:$PMSHUSER $APPDIR && \
+ chmod 500 $APPDIR/bin/*.py
+
+# set to non root user
+USER $PMSHUSER
+
+# run the app
+ENTRYPOINT ["python", "./bin/pmsh_service.py"] \ No newline at end of file