X-Git-Url: https://osm.etsi.org/gitweb/?a=blobdiff_plain;f=docker%2FLCM%2FDockerfile;h=72d6a86355e0cf78a1ecd6bda00fa59ea02504c7;hb=bfb7790d10dfc34c17976c8e60372543af33a618;hp=46be58e7baf80a0e5f0fbd56351fd5879dac7de0;hpb=77f468c862b35dae117b7b0fc9ff54921e8dd535;p=osm%2Fdevops.git diff --git a/docker/LCM/Dockerfile b/docker/LCM/Dockerfile index 46be58e7..72d6a863 100644 --- a/docker/LCM/Dockerfile +++ b/docker/LCM/Dockerfile @@ -1,3 +1,21 @@ +## +# Copyright 2019 ETSI +# +# 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. +## + +######################################################################## + # This creates som/LCM docker from from last stable package FROM ubuntu:16.04 @@ -23,21 +41,24 @@ RUN apt-get update && apt-get -y install curl software-properties-common RUN apt-get update && apt-get install -y git make python3 \ python3-pip python3-pymongo python3-yaml python3-aiohttp \ - python3-all python3-setuptools \ + python3-all python3-setuptools openssh-client libffi-dev libssl-dev \ python3-bitarray python3-regex python3-lxml dh-python wget tox \ python3-cffi \ - && pip3 install pip==9.0.3 \ - && pip3 install -U aiokafka pyang lxml six enum34 \ - && pip3 install websockets==4.0.1 \ - && pip3 install requests - -RUN pip3 install PyNaCl - -RUN git clone https://osm.etsi.org/gerrit/osm/N2VC.git \ - && cd N2VC \ - && git checkout BUILD_v4.0.1_1 \ - && cd modules/libjuju && python3 setup.py develop && cd ../.. \ - && pip3 install -U -r requirements.txt + && pip3 install -U pip \ + && python3 -m pip install -U aiokafka pyang lxml six enum34 \ + && python3 -m pip install websockets==4.0.1 \ + && python3 -m pip install requests \ + && rm -rf /var/lib/apt/lists/* + +# packages needed for N2VC because deb dependencies are not fine +RUN python3 -m pip install 'macaroonbakery>=1.1,<2.0' 'pyRFC3339>=1.0,<2.0' \ + 'pyyaml>=3.0,<4.0' 'theblues>=0.3.8,<1.0' 'websockets>=4.0,<5.0' \ + 'paramiko' # PyNaCl +# +# RUN git clone https://osm.etsi.org/gerrit/osm/N2VC.git \ +# && cd N2VC \ +# && cd modules/libjuju && python3 setup.py develop && cd ../.. \ +# && python3 -m pip install -U -r requirements.txt ARG REPOSITORY_BASE=http://osm-download.etsi.org/repository/osm/debian ARG RELEASE=ReleaseFOUR-daily @@ -81,8 +102,11 @@ ENV OSMLCM_VCA_SECRET: secret # database ENV OSMLCM_DATABASE_DRIVER mongo -ENV OSMLCM_DATABASE_HOST mongo -ENV OSMLCM_DATABASE_PORT 27017 +ENV OSMLCM_DATABASE_URI mongodb://mongo:27017 +#ENV OSMLCM_DATABASE_HOST mongo +#ENV OSMLCM_DATABASE_PORT 27017 + + ENV OSMLCM_STORAGE_DRIVER local ENV OSMLCM_STORAGE_PATH /app/storage @@ -91,5 +115,9 @@ ENV OSMLCM_MESSAGE_DRIVER kafka ENV OSMLCM_MESSAGE_HOST kafka ENV OSMLCM_MESSAGE_PORT 9092 +HEALTHCHECK --interval=30s --timeout=140s --retries=1 \ + CMD python3 /usr/lib/python3/dist-packages/osm_lcm/lcm.py --health-check || exit 1 + + # Run app.py when the container launches CMD ["python3", "/usr/lib/python3/dist-packages/osm_lcm/lcm.py"]