Fix and move Dockerfile to this repository
Change-Id: I07039719c82d3a727b108f7875f231cd6b79493d
diff --git a/.dockerignore b/.dockerignore
new file mode 100644
index 0000000..9414382
--- /dev/null
+++ b/.dockerignore
@@ -0,0 +1 @@
+Dockerfile
diff --git a/Dockerfile b/Dockerfile
new file mode 100644
index 0000000..e0ee5e8
--- /dev/null
+++ b/Dockerfile
@@ -0,0 +1,38 @@
+# Setup container with Ubuntu 20.04 image
+FROM ubuntu:20.04
+
+# Set the working directory to /
+WORKDIR /
+
+# expose ports for openvswitch-switch
+EXPOSE 6633 6653 6640
+
+# Update container image
+RUN apt-get update -y && \
+ apt-get autoremove -y && \
+ apt-get install --no-install-recommends -y \
+ lsb-release sudo \
+ zip unzip wget git ca-certificates \
+ curl iproute2 iputils-ping net-tools \
+ tcpdump vim x11-xserver-utils xterm && \
+ update-ca-certificates && \
+ alias python=python3
+
+RUN git clone --depth 1 https://github.com/mininet/mininet.git && \
+ cd mininet && ./util/install.sh && cd /
+
+COPY . /mini-ndn
+
+RUN cd mini-ndn && \
+ pip3 install -r requirements.txt && \
+ ./install.sh -y --ppa && cd /
+
+RUN rm -rf /var/lib/apt/lists/*
+
+COPY docker/ENTRYPOINT.sh /
+RUN chmod +x ENTRYPOINT.sh
+
+# Change the working directory to /mini-ndn
+WORKDIR /mini-ndn
+
+ENTRYPOINT ["/ENTRYPOINT.sh"]
diff --git a/docker/ENTRYPOINT.sh b/docker/ENTRYPOINT.sh
new file mode 100644
index 0000000..cd44fa7
--- /dev/null
+++ b/docker/ENTRYPOINT.sh
@@ -0,0 +1,11 @@
+#!/usr/bin/env bash
+
+# set python3 alias, but needs permanent fix in image directly
+alias python=python3
+
+service openvswitch-switch start
+ovs-vsctl set-manager ptcp:6640
+
+bash
+
+service openvswitch-switch stop
diff --git a/docker/README.md b/docker/README.md
index db48f9e..97a2816 100644
--- a/docker/README.md
+++ b/docker/README.md
@@ -1,20 +1,12 @@
[comments]: The original author of Mini-NDN docker is Md Ashiqur Rahman (marahman@email.arizona.edu)
-| :exclamation: Mini-NDN docker is in experimental phase, it uses older version of Mini-NDN and is incompatible with the current version |
-|-----------------------------------------------------------------------------------------------------------------------------------------|
+### `docker build`
-### `docker build` or `docker pull`
-
-The [Dockerfile](https://github.com/ashiqopu/docker-minindn/blob/master/Dockerfile) can be used directly to `build` an image from scratch.
+The Dockerfile can be used directly to `build` an image from scratch.
* Build with `Dockerfile`:
- * Open terminal and use the following command:
- ```bash
- git clone https://github.com/ashiqopu/docker-minindn
- cd docker-minindn
- ```
- * Type and enter.
+ * Clone the repository and type.
```bash
docker build -t minindn .
```