Removes git clone operation from Dockerfile 03/6003/1
authorBenjamin Diaz <bdiaz@whitestack.com>
Wed, 18 Apr 2018 18:27:31 +0000 (15:27 -0300)
committerBenjamin Diaz <bdiaz@whitestack.com>
Wed, 18 Apr 2018 18:27:31 +0000 (15:27 -0300)
Adds use of COPY statement
Modifies Dockerfile to optimize use of cache

Signed-off-by: Benjamin Diaz <bdiaz@whitestack.com>
docker/Dockerfile
docker/scripts/runInstall.sh
requirements.txt

index e93bce5..ad00631 100644 (file)
@@ -1,35 +1,45 @@
-# Dockerfile to launch MON module in a docker
-# Kafka bus must be launched in a different container
+# Copyright 2018 Whitestack, LLC
+# *************************************************************
+
+# This file is part of OSM Monitoring module
+# All Rights Reserved to Whitestack, LLC
+
+# 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.
+
+# For those usages not covered by the Apache License, Version 2.0 please
+# contact: bdiaz@whitestack.com or glavado@whitestack.com
+##
 
 FROM ubuntu:16.04
 
 LABEL authors="Guillermo Calvino"
 
+RUN apt-get --yes update \
+ && apt-get --yes install git python python-pip sudo libmysqlclient-dev \
+ && pip install pip==9.0.3
+
+COPY requirements.txt /mon/requirements.txt
+
+RUN pip install -r /mon/requirements.txt
+
+COPY . /mon
+
+RUN pip install /mon
+
 # These ENV must be provided
 # ENV BROKER_URI=kafka:9092
-# ENV OS_AUTH_URL=http://IP-ADDR:PORT/
-# ENV OS_PASSWORD=****
-# ENV OS_TENANT_NAME=****
-# ENV OS_USERNAME=****
-# ENV OS_IDENTITY_API_VERSION=v2 or 3
-
-ENV BROKER_URI=""
-ENV OS_AUTH_URL=""
-ENV OS_PASSWORD=""
-ENV OS_TENANT_NAME=""
-ENV OS_USERNAME=""
-ENV OS_IDENTITY_API_VERSION=""
+# ENV OS_NOTIFIER_URI=<IP_ACCESIBLE_FROM_OPENSTACK>:8662
 
 EXPOSE 8662
 
-RUN apt-get --yes update \
- && apt-get --yes install software-properties-common python-software-properties \
- && apt-get --yes update \
- && apt-get --yes install git python python-pip sudo libmysqlclient-dev libxext-dev libxrender-dev libxtst-dev \
- && cd /root/ \
- && git clone https://osm.etsi.org/gerrit/osm/MON MON \
- && pip install pip==9.0.3 \
- && pip install -r /root/MON/requirements.txt \
- && pip install /root/MON
-
-CMD /bin/bash /root/MON/docker/scripts/runInstall.sh
+CMD /bin/bash mon/docker/scripts/runInstall.sh
index a17865b..87954ed 100755 (executable)
@@ -1,5 +1,26 @@
 #!/usr/bin/env bash
-/bin/bash /root/MON/osm_mon/plugins/vRealiseOps/vROPs_Webservice/install.sh
-nohup python /root/MON/osm_mon/plugins/OpenStack/Aodh/notifier.py &
-python /root/MON/osm_mon/core/message_bus/common_consumer.py
+# Copyright 2018 Whitestack, LLC
+# *************************************************************
+
+# This file is part of OSM Monitoring module
+# All Rights Reserved to Whitestack, LLC
+
+# 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.
+
+# For those usages not covered by the Apache License, Version 2.0 please
+# contact: bdiaz@whitestack.com or glavado@whitestack.com
+##
+/bin/bash /mon/osm_mon/plugins/vRealiseOps/vROPs_Webservice/install.sh
+nohup python /mon/osm_mon/plugins/OpenStack/Aodh/notifier.py &
+python /mon/osm_mon/core/message_bus/common_consumer.py
 
index 39f18d3..be103aa 100644 (file)
 
 # For those usages not covered by the Apache License, Version 2.0 please
 # contact: prithiv.mohan@intel.com or adrian.hoban@intel.com
-stdeb
-MySQL-python
-kafka
-lxml
-requests
-logutils
-cherrypy
-jsmin
-jsonschema
-python-openstackclient
-python-novaclient
-python-keystoneclient
-python-neutronclient
-aodhclient
-gnocchiclient
+stdeb==0.8.*
+MySQL-python==1.2.*
+kafka==1.3.*
+lxml==4.2.*
+requests==2.18.*
+logutils==0.3.*
+cherrypy==14.0.*
+jsmin==2.2.*
+jsonschema==2.6.*
+python-openstackclient==3.15.*
+python-novaclient==10.1.*
+python-keystoneclient==3.15.*
 boto==2.48
-python-cloudwatchlogs-logging
-py-cloudwatch
+python-cloudwatchlogs-logging==0.0.3
+py-cloudwatch==0.0.1
 pyvcloud==19.1.1
-pyopenssl
-six
-bottle
+pyopenssl==17.5.*
+six==1.11.*
+bottle==0.12.*
 peewee==3.1.*
-pyyaml
\ No newline at end of file
+pyyaml==3.*
\ No newline at end of file