X-Git-Url: https://osm.etsi.org/gitweb/?p=osm%2Fvim-emu.git;a=blobdiff_plain;f=utils%2Fdocker%2FDockerfile;h=6d3a0744f9ebfc885be7a4576de2b7dd9cedba55;hp=d71a53dea4df8e3a35472c88574761cd4ae4d0a9;hb=0dbb1f66464bc239edb4680656a5d8be0a6343e3;hpb=a3a4c991299766f664273b68ab560d9acfcab003 diff --git a/utils/docker/Dockerfile b/utils/docker/Dockerfile old mode 100644 new mode 100755 index d71a53d..6d3a074 --- a/utils/docker/Dockerfile +++ b/utils/docker/Dockerfile @@ -1,19 +1,69 @@ -FROM cgeoffroy/dockernet +# Copyright (c) 2015 SONATA-NFV and Paderborn University +# ALL RIGHTS RESERVED. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# Neither the name of the SONATA-NFV [, ANY ADDITIONAL AFFILIATION] +# nor the names of its contributors may be used to endorse or promote +# products derived from this software without specific prior written +# permission. +# +# This work has been performed in the framework of the SONATA project, +# funded by the European Commission under Grant number 671517 through +# the Horizon 2020 and 5G-PPP programmes. The authors would like to +# acknowledge the contributions of their colleagues of the SONATA +# partner consortium (www.sonata-nfv.eu). -# ensure that we have the latest dockernet code base! +FROM ubuntu:trusty + +ENV SON_EMU_IN_DOCKER 1 + +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 + +RUN pip install -U urllib3==1.21.1 +RUN pip install -U setuptools pyparsing docker python-iptables WORKDIR / -RUN rm -rf dockernet -RUN git clone -b dockernet-sonata https://github.com/mpeuster/dockernet.git -WORKDIR /dockernet -RUN python setup.py develop +RUN git clone https://github.com/containernet/containernet.git +RUN containernet/util/install.sh +WORKDIR containernet/ +RUN make develop -WORKDIR /son-emu -COPY . /son-emu/ +# 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 / +#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' -RUN cd /son-emu/ansible \ - && ansible-playbook install.yml \ - && cd /son-emu \ - && python setup.py install \ - && echo 'Done' ENTRYPOINT ["/son-emu/utils/docker/entrypoint.sh"] + +# dummy GK, cAdvisor, Prometheus Push Gateway, son-emu REST API, OpenStack-fake APIs +EXPOSE 5000 8081 9091 5001 6001 6002 6003 6004