blob: ec9a0ede0f59a214132dade51afaf5550f7a3976 [file] [log] [blame]
Gennadiy Dubina311ea742017-04-03 20:46:16 +03001from ubuntu:xenial
2
garciadeblas0cb7df32018-02-07 03:22:37 +01003LABEL authors="Gennadiy Dubina, Alfonso Tierno, Gerardo Garcia"
Gennadiy Dubina311ea742017-04-03 20:46:16 +03004
garciadeblas0cb7df32018-02-07 03:22:37 +01005RUN apt-get update && \
6 DEBIAN_FRONTEND=noninteractive apt-get -y install software-properties-common && \
Eduardo Sousae3c0dbc2018-09-03 11:56:07 +01007 DEBIAN_FRONTEND=noninteractive add-apt-repository -y cloud-archive:queens && \
garciadeblas107ed152018-06-15 19:22:08 +02008 apt-get update && \
tierno92021022018-09-12 16:29:23 +02009 DEBIAN_FRONTEND=noninteractive apt-get -y install git python python-pip && \
garciadeblas0cb7df32018-02-07 03:22:37 +010010 DEBIAN_FRONTEND=noninteractive apt-get -y install wget tox && \
tierno92021022018-09-12 16:29:23 +020011 DEBIAN_FRONTEND=noninteractive pip2 install pip==9.0.3 && \
12 DEBIAN_FRONTEND=noninteractive pip2 install -U progressbar pyvmomi pyvcloud==19.1.1 && \
garciadeblasebd66722019-01-31 16:01:31 +000013 DEBIAN_FRONTEND=noninteractive apt-get -y install python-novaclient python-keystoneclient python-glanceclient python-cinderclient python-neutronclient python-networking-l2gw && \
tierno92021022018-09-12 16:29:23 +020014 DEBIAN_FRONTEND=noninteractive apt-get -y install python-cffi libmysqlclient-dev libssl-dev libffi-dev python-mysqldb && \
15 DEBIAN_FRONTEND=noninteractive apt-get -y install python-openstacksdk python-openstackclient && \
Anderson Bravalheric5293de2018-11-28 17:21:26 +000016 DEBIAN_FRONTEND=noninteractive apt-get -y install python-networkx && \
Ananda Baitharu319c26f2019-03-05 17:34:31 +000017 DEBIAN_FRONTEND=noninteractive apt-get -y install genisoimage && \
tierno92021022018-09-12 16:29:23 +020018 DEBIAN_FRONTEND=noninteractive pip2 install untangle && \
19 DEBIAN_FRONTEND=noninteractive pip2 install -e git+https://github.com/python-oca/python-oca#egg=oca && \
Eduardo Sousaab24d8b2018-10-17 17:10:04 +010020 DEBIAN_FRONTEND=noninteractive apt-get -y install mysql-client
21
22COPY . /root/RO
23
baldoni10757152019-03-27 10:46:08 +010024RUN apt-get -y install python-requests && \
25 mkdir -p /root/fos && \
26 cd /root/fos && \
27 git clone https://github.com/eclipse/fog05 && \
28 cd fog05/src/api/python/rest_api/ && \
29 python setup.py install && \
30 cd ~ && \
31 /root/RO/scripts/install-osm-im.sh --develop && \
tierno92021022018-09-12 16:29:23 +020032 /root/RO/scripts/install-lib-osm-openvim.sh --develop && \
33 make -C /root/RO prepare && \
34 mkdir -p /var/log/osm && \
35 pip2 install -e /root/RO/build && \
garciadeblas0cb7df32018-02-07 03:22:37 +010036 rm -rf /root/.cache && \
37 apt-get clean && \
tierno92021022018-09-12 16:29:23 +020038 rm -rf /var/lib/apt/lists/*
garciadeblas0cb7df32018-02-07 03:22:37 +010039
40VOLUME /var/log/osm
tiernod4d5e252018-01-23 17:07:46 +010041
Gennadiy Dubina311ea742017-04-03 20:46:16 +030042EXPOSE 9090
43
tiernod4d5e252018-01-23 17:07:46 +010044# Two mysql databases are needed (DB and DB_OVIM). Can be hosted on same or separated containers
45# These ENV must be provided
garciadeblas0cb7df32018-02-07 03:22:37 +010046# RO_DB_HOST: host of the main
47# RO_DB_OVIM_HOST: ... if empty RO_DB_HOST is assumed
48# RO_DB_ROOT_PASSWORD: this has to be provided first time for creating database. It will create and init only if empty!
49# RO_DB_OVIM_ROOT_PASSWORD: ... if empty RO_DB_ROOT_PASSWORD is assumed
50# RO_DB_USER: default value 'mano'
51# RO_DB_OVIM_USER: default value 'mano'
52# RO_DB_PASSWORD: default value 'manopw'
53# RO_DB_OVIM_PASSWORD: default value 'manopw'
54# RO_DB_PORT: default value '3306'
55# RO_DB_OVIM_PORT: default value '3306'
56# RO_DB_NAME: default value 'mano_db'
57# RO_DB_OVIM_NAME: default value 'mano_vim_db'
tierno307a1ca2018-10-25 14:27:36 +020058# RO_LOG_FILE: default log to stderr if not defined
Gennadiy Dubina311ea742017-04-03 20:46:16 +030059
garciadeblas0cb7df32018-02-07 03:22:37 +010060ENV RO_DB_HOST="" \
61 RO_DB_OVIM_HOST="" \
62 RO_DB_ROOT_PASSWORD="" \
63 RO_DB_OVIM_ROOT_PASSWORD="" \
64 RO_DB_USER=mano \
65 RO_DB_OVIM_USER=mano \
66 RO_DB_PASSWORD=manopw \
67 RO_DB_OVIM_PASSWORD=manopw \
68 RO_DB_PORT=3306 \
69 RO_DB_OVIM_PORT=3306 \
70 RO_DB_NAME=mano_db \
tiernob8569aa2018-08-24 11:34:54 +020071 RO_DB_OVIM_NAME=mano_vim_db \
tierno307a1ca2018-10-25 14:27:36 +020072 OPENMANO_TENANT=osm \
73 RO_LOG_LEVEL=DEBUG
tiernod4d5e252018-01-23 17:07:46 +010074
tierno12690ed2018-09-14 21:16:19 +000075CMD RO-start.sh
tierno2cff3462018-12-04 14:05:26 +000076
77# HEALTHCHECK --start-period=30s --interval=10s --timeout=5s --retries=12 \
78# CMD curl --silent --fail localhost:9090/openmano/tenants || exit 1