Install needed packages for Azure
[osm/RO.git] / docker / Dockerfile-local
1 from ubuntu:xenial
2
3 LABEL authors="Gennadiy Dubina, Alfonso Tierno, Gerardo Garcia"
4
5 RUN apt-get update && \
6     DEBIAN_FRONTEND=noninteractive apt-get -y install software-properties-common && \
7     DEBIAN_FRONTEND=noninteractive add-apt-repository -y cloud-archive:queens && \
8     apt-get update && \
9     DEBIAN_FRONTEND=noninteractive apt-get -y install git python python-pip && \
10     DEBIAN_FRONTEND=noninteractive apt-get -y install wget tox && \
11     DEBIAN_FRONTEND=noninteractive pip2 install pip==9.0.3 && \
12     DEBIAN_FRONTEND=noninteractive pip2 install -U progressbar pyvmomi pyvcloud==19.1.1 && \
13     DEBIAN_FRONTEND=noninteractive pip2 install -U fog05rest && \
14     DEBIAN_FRONTEND=noninteractive pip2 install -U azure && \
15     DEBIAN_FRONTEND=noninteractive apt-get -y install python-requests && \
16     DEBIAN_FRONTEND=noninteractive apt-get -y install python-novaclient python-keystoneclient python-glanceclient python-cinderclient python-neutronclient python-networking-l2gw && \
17     DEBIAN_FRONTEND=noninteractive apt-get -y install python-cffi libmysqlclient-dev libssl-dev libffi-dev python-mysqldb && \
18     DEBIAN_FRONTEND=noninteractive apt-get -y install python-openstacksdk python-openstackclient && \
19     DEBIAN_FRONTEND=noninteractive apt-get -y install python-networkx && \
20     DEBIAN_FRONTEND=noninteractive apt-get -y install genisoimage && \
21     DEBIAN_FRONTEND=noninteractive pip2 install untangle && \
22     DEBIAN_FRONTEND=noninteractive pip2 install -e git+https://github.com/python-oca/python-oca#egg=oca && \
23     DEBIAN_FRONTEND=noninteractive apt-get -y install mysql-client
24
25 COPY . /root/RO
26
27 RUN /root/RO/scripts/install-osm-im.sh --develop && \
28     /root/RO/scripts/install-lib-osm-openvim.sh --develop && \
29     make -C /root/RO prepare && \
30     mkdir -p /var/log/osm && \
31     pip2 install -e /root/RO/build && \
32     rm -rf /root/.cache && \
33     apt-get clean && \
34     rm -rf /var/lib/apt/lists/*
35
36 VOLUME /var/log/osm
37
38 EXPOSE 9090
39
40 # Two mysql databases are needed (DB and DB_OVIM). Can be hosted on same or separated containers
41 # These ENV must be provided
42 # RO_DB_HOST: host of the main
43 # RO_DB_OVIM_HOST: ...        if empty RO_DB_HOST is assumed
44 # RO_DB_ROOT_PASSWORD: this has to be provided first time for creating database. It will create and init only if empty!
45 # RO_DB_OVIM_ROOT_PASSWORD: ...  if empty RO_DB_ROOT_PASSWORD is assumed
46 # RO_DB_USER:    default value 'mano'
47 # RO_DB_OVIM_USER:       default value 'mano'
48 # RO_DB_PASSWORD:        default value 'manopw'
49 # RO_DB_OVIM_PASSWORD:        default value 'manopw'
50 # RO_DB_PORT:             default value '3306'
51 # RO_DB_OVIM_PORT:        default value '3306'
52 # RO_DB_NAME:             default value 'mano_db'
53 # RO_DB_OVIM_NAME:        default value 'mano_vim_db'
54 # RO_LOG_FILE:            default log to stderr if not defined
55
56 ENV RO_DB_HOST="" \
57     RO_DB_OVIM_HOST="" \
58     RO_DB_ROOT_PASSWORD="" \
59     RO_DB_OVIM_ROOT_PASSWORD="" \
60     RO_DB_USER=mano \
61     RO_DB_OVIM_USER=mano \
62     RO_DB_PASSWORD=manopw \
63     RO_DB_OVIM_PASSWORD=manopw \
64     RO_DB_PORT=3306 \
65     RO_DB_OVIM_PORT=3306 \
66     RO_DB_NAME=mano_db \
67     RO_DB_OVIM_NAME=mano_vim_db \
68     OPENMANO_TENANT=osm \
69     RO_LOG_LEVEL=DEBUG
70
71 CMD RO-start.sh
72
73 # HEALTHCHECK --start-period=30s --interval=10s --timeout=5s --retries=12 \
74 #  CMD curl --silent --fail localhost:9090/openmano/tenants || exit 1