X-Git-Url: https://osm.etsi.org/gitweb/?a=blobdiff_plain;f=docker%2FDockerfile;h=e9d355de1c104887267be45e9478d6246885f373;hb=4b9f79e2820a011f6ebbba7fb92cdc120b364650;hp=e93bce5b3b4af6c363d783ad5a30b17cdc0992c3;hpb=022f26af98045df7c51c8151712927b4f7b15a96;p=osm%2FMON.git diff --git a/docker/Dockerfile b/docker/Dockerfile index e93bce5..e9d355d 100644 --- a/docker/Dockerfile +++ b/docker/Dockerfile @@ -1,35 +1,66 @@ -# Dockerfile to launch MON module in a docker -# Kafka bus must be launched in a different container +# Copyright 2018 Whitestack, LLC +# ************************************************************* -FROM ubuntu:16.04 +# This file is part of OSM Monitoring module +# All Rights Reserved to Whitestack, LLC -LABEL authors="Guillermo Calvino" +# 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 -# 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 +# http://www.apache.org/licenses/LICENSE-2.0 -ENV BROKER_URI="" -ENV OS_AUTH_URL="" -ENV OS_PASSWORD="" -ENV OS_TENANT_NAME="" -ENV OS_USERNAME="" -ENV OS_IDENTITY_API_VERSION="" +# 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. -EXPOSE 8662 +# For those usages not covered by the Apache License, Version 2.0 please +# contact: bdiaz@whitestack.com or glavado@whitestack.com +## + +FROM ubuntu:20.04 + +LABEL authors="Benjamín Díaz" 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 + && apt-get --yes install git python3 python3-pip libssl-dev libffi-dev \ + && python3 -m pip install -U pip + +COPY requirements.txt /mon/requirements.txt + +RUN pip3 install -r /mon/requirements.txt + +COPY . /mon + +RUN pip3 install /mon + +ENV OSMMON_MESSAGE_DRIVER kafka +ENV OSMMON_MESSAGE_HOST kafka +ENV OSMMON_MESSAGE_PORT 9092 + +ENV OSMMON_DATABASE_DRIVER mongo +ENV OSMMON_DATABASE_URI mongodb://mongo:27017 + +ENV OSMMON_SQL_DATABASE_URI sqlite:///mon_sqlite.db +ENV OSMMON_GLOBAL_REQUEST_TIMEOUT 10 +ENV OSMMON_GLOBAL_LOGLEVEL INFO +ENV OSMMON_VCA_HOST localhost +ENV OSMMON_VCA_SECRET secret +ENV OSMMON_VCA_USER admin +ENV OSMMON_VCA_CACERT cacert +ENV OSMMON_DATABASE_COMMONKEY changeme +ENV OSMMON_COLLECTOR_INTERVAL 30 +ENV OSMMON_EVALUATOR_INTERVAL 30 +ENV OSMMON_PROMETHEUS_URL http://prometheus:9090 +ENV OSMMON_GRAFANA_URL http://grafana:3000 +ENV OSMMON_GRAFANA_USER admin +ENV OSMMON_GRAFANA_PASSWORD admin + +EXPOSE 8000 + +HEALTHCHECK --interval=5s --timeout=2s --retries=12 \ + CMD osm-mon-healthcheck || exit 1 + +CMD /bin/bash mon/docker/scripts/start.sh