added OpenStack-fake API ports to Dockerfile
[osm/vim-emu.git] / utils / docker / Dockerfile
index 64bd790..6d3a074 100755 (executable)
 # acknowledge the contributions of their colleagues of the SONATA
 # partner consortium (www.sonata-nfv.eu).
 
-FROM ubuntu:14.04
-MAINTAINER steven.vanrossem@intec.ugent.be
+FROM ubuntu:trusty
 
 ENV SON_EMU_IN_DOCKER 1
 
+RUN apt-get clean
 RUN apt-get update \
-    && apt-get install -y  ansible git aptitude
+    && apt-get install -y  git aptitude build-essential python-setuptools python-dev software-properties-common
 
 
 # install containernet
+RUN apt-get install -y curl iptables && \
+    curl https://bootstrap.pypa.io/get-pip.py | python2
+
+# install docker
+RUN curl -fsSL https://get.docker.com/gpg | apt-key add -
+RUN curl -fsSL https://get.docker.com/ | sh
+
+RUN pip install -U urllib3==1.21.1
+RUN pip install -U setuptools pyparsing docker python-iptables
 WORKDIR /
 RUN git clone https://github.com/containernet/containernet.git
-WORKDIR containernet/ansible
-RUN echo 'localhost ansible_connection=local' >> /etc/ansible/hosts
-RUN ansible-playbook install.yml
+RUN containernet/util/install.sh
+WORKDIR containernet/
+RUN make develop
 
 # install son-emu
+RUN echo 'install son-emu'
+RUN apt-get install -y  python-dev python-zmq libzmq-dev libffi-dev libssl-dev
+RUN pip install -U zerorpc tabulate argparse networkx six ryu oslo.config pytest Flask flask_restful requests prometheus_client pyaml
 WORKDIR /
-RUN git clone https://github.com/sonata-nfv/son-emu.git
-WORKDIR /son-emu/ansible
-RUN ansible-playbook install.yml
-
+#avoid pulling not the latest git, copy the current dir, to run this from Jenkins
+#RUN git clone https://github.com/sonata-nfv/son-emu.git
+COPY . /son-emu
+WORKDIR son-emu/
+RUN python setup.py develop
+WORKDIR / 
 RUN echo 'Done'
 
 
 ENTRYPOINT ["/son-emu/utils/docker/entrypoint.sh"]
 
-# dummy GK, cAdvisor, Prometheus Push Gateway, son-emu REST API
-EXPOSE 5000 8081 9091 5001
+# dummy GK, cAdvisor, Prometheus Push Gateway, son-emu REST API, OpenStack-fake APIs
+EXPOSE 5000 8081 9091 5001 6001 6002 6003 6004