# acknowledge the contributions of their colleagues of the SONATA
# partner consortium (www.sonata-nfv.eu).
-FROM ubuntu:xenial
+FROM ubuntu:bionic
ENV SON_EMU_IN_DOCKER 1
ENV PIP_DEFAULT_TIMEOUT=100
&& apt-get install -y git \
net-tools \
aptitude \
+ apt-utils \
build-essential \
- python-setuptools \
- python-dev \
- python-pip \
+ libevent-dev \
software-properties-common \
ansible \
curl \
iptables \
iputils-ping \
sudo \
- vim
+ wget \
+ python3 \
+ python3-dev \
+ python3-venv \
+ python3-pip
# install containernet (using its Ansible playbook)
-#RUN git clone https://github.com/containernet/containernet.git && \
-# (cd containernet && git checkout 6fcee82e192c8c0e6447650d6f512842185529ee)
RUN git clone https://github.com/containernet/containernet.git
+
WORKDIR /containernet/ansible
RUN ansible-playbook -i "localhost," -c local --skip-tags "notindocker" install.yml
# install emulator (using its Ansible playbook)
-COPY . /son-emu
-WORKDIR /son-emu/ansible
+COPY . /vim-emu
+WORKDIR /vim-emu/ansible
RUN ansible-playbook -i "localhost," -c local --skip-tags "notindocker" install.yml
-WORKDIR /son-emu
-RUN python setup.py develop
+WORKDIR /vim-emu
+RUN python3 setup.py develop
# Hotfix: https://github.com/pytest-dev/pytest/issues/4770
-RUN pip2 install "more-itertools<=5.0.0"
+RUN pip3 install "more-itertools<=5.0.0"
+
+# Hotfix: Do not use latest tinyrpc lib, since it breaks Ryu
+RUN pip3 install "tinyrpc==1.0.3"
+
+RUN pip3 install wheel --upgrade
# Important: This entrypoint is required to start the OVS service
-ENTRYPOINT ["/son-emu/utils/docker/entrypoint.sh"]
-CMD ["python", "examples/default_single_dc_topology.py"]
+ENTRYPOINT ["/vim-emu/utils/docker/entrypoint.sh"]
+CMD ["python3", "examples/default_single_dc_topology.py"]
# open ports for emulator APIs
# SONATA GK