blob: 06a0fcdc2c124350cc2dd0a8086810aaf65b0258 [file] [log] [blame]
tiernof3c4dbc2018-02-05 14:53:28 +01001FROM ubuntu:16.04
2
3# Set the working directory to /app
4WORKDIR /app/osm_lcm
5
6# Copy the current directory contents into the container at /app
7ADD . /app
8
Adam Israel354ead92018-03-18 14:46:23 -04009RUN apt-get update && apt-get install -y git python3 \
tiernof3c4dbc2018-02-05 14:53:28 +010010 python3-pip python3-pymongo python3-yaml python3-aiohttp \
Adam Israel354ead92018-03-18 14:46:23 -040011 python3-stdeb python3-setuptools python3-all python-all \
12 python3-bitarray python3-regex python3-lxml debhelper dh-python tox wget \
13 python3-cffi \
garciadeblasc9cba062018-04-17 18:06:23 +020014 && pip3 install pip==9.0.3 \
Adam Israel354ead92018-03-18 14:46:23 -040015 && pip3 install -U aiokafka pyang lxml six enum34
tiernof3c4dbc2018-02-05 14:53:28 +010016
Adam Israel354ead92018-03-18 14:46:23 -040017RUN git clone https://osm.etsi.org/gerrit/osm/N2VC.git \
18 && cd N2VC \
Adam Israel354ead92018-03-18 14:46:23 -040019 && cd modules/libjuju && python3 setup.py develop && cd ../.. \
20 && pip3 install -U -r requirements.txt \
21 && python3 setup.py develop \
22 && cd ..
23
24RUN mkdir -p /app/storage/kafka && mkdir -p /app/log
tiernof3c4dbc2018-02-05 14:53:28 +010025
26
27LABEL Maintainer="alfonso.tiernosepulveda@telefonica.com" \
28 Description="This implements a north bound interface for OSM" \
tiernoae501922018-02-06 23:17:16 +010029 Version="1.0" \
30 Author="Alfonso Tierno"
tiernof3c4dbc2018-02-05 14:53:28 +010031
32# Used for local storage
33VOLUME /app/storage
34# Used for logs
35VOLUME /app/log
36
37# The following ENV can be added with "docker run -e xxx' to configure
38# RO
39ENV OSMLCM_RO_HOST ro
40ENV OSMLCM_RO_PORT 9090
41ENV OSMLCM_RO_TENANT osm
42
43# VCA
44ENV OSMLCM_VCA_HOST vca
45ENV OSMLCM_VCA_PORT: 17070
46ENV OSMLCM_VCA_USER: admin
47ENV OSMLCM_VCA_SECRET: secret
48
49# database
50ENV OSMLCM_DATABASE_DRIVER mongo
51ENV OSMLCM_DATABASE_HOST mongo
52ENV OSMLCM_DATABASE_PORT 27017
53ENV OSMLCM_STORAGE_DRIVER local
54ENV OSMLCM_STORAGE_PATH /app/storage
55
56# message
57ENV OSMLCM_MESSAGE_DRIVER kafka
58ENV OSMLCM_MESSAGE_HOST kafka
59ENV OSMLCM_MESSAGE_PORT 9092
60
61ENV PYTHONPATH /app/osm_common
62# Run app.py when the container launches
63CMD ["python3", "lcm.py"]