X-Git-Url: https://osm.etsi.org/gitweb/?p=osm%2Fvim-emu.git;a=blobdiff_plain;f=utils%2Fdocker%2FDockerfile;h=5f2078eb9e8c50b8e988c6e28be00b68bb5e5a68;hp=facbb0e5adc6965750afe6b708fd1719b67d42a5;hb=bbe128904ab07e43a0386f17a500c679ff9059e0;hpb=b77a278a67cb29e52422eefb3a01c085dabe1d20 diff --git a/utils/docker/Dockerfile b/utils/docker/Dockerfile index facbb0e..5f2078e 100755 --- a/utils/docker/Dockerfile +++ b/utils/docker/Dockerfile @@ -13,7 +13,7 @@ # See the License for the specific language governing permissions and # limitations under the License. # -# Neither the name of the SONATA-NFV [, ANY ADDITIONAL AFFILIATION] +# Neither the name of the SONATA-NFV, Paderborn University # nor the names of its contributors may be used to endorse or promote # products derived from this software without specific prior written # permission. @@ -24,29 +24,46 @@ # acknowledge the contributions of their colleagues of the SONATA # partner consortium (www.sonata-nfv.eu). -FROM containernet/containernet -MAINTAINER manuel@peuster.de +FROM ubuntu:trusty ENV SON_EMU_IN_DOCKER 1 -WORKDIR /son-emu -COPY . /son-emu/ - RUN apt-get clean +RUN apt-get update \ + && 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 -WORKDIR /son-emu/ansible -RUN ansible-playbook install.yml +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 +RUN containernet/util/install.sh +WORKDIR containernet/ +RUN make develop -WORKDIR /son-emu -# we need to reset the __pycache__ for correct test discovery -RUN rm -rf src/emuvim/test/__pycache__ -RUN rm -rf src/emuvim/test/unittests/__pycache__ -RUN rm -rf src/emuvim/test/integrationtests/__pycache__ -RUN python setup.py install +# install son-emu +RUN echo 'install son-emu' +RUN apt-get install -y python-dev libffi-dev libssl-dev +RUN pip install -U tabulate argparse networkx six ryu oslo.config pytest Flask flask_restful requests prometheus_client pyaml +WORKDIR / +#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, zerorpc, DCNetwork zerorpc, cAdvisor, restAPI -EXPOSE 5000 4242 5151 8090 5001 +# dummy GK, cAdvisor, Prometheus Push Gateway, son-emu REST API, OpenStack-fake APIs +EXPOSE 5000 8081 9091 5001 4000 10243 9005 6001 9775 10697