1 ### OpenDaylight Docker Images
2 The `Dockerfile` in this directory can be used to construct a Docker image for the OpenDaylight SDN controller. The current OpenDaylight version is [Helium](http://www.opendaylight.org/software/downloads/helium). Note that Helium uses Karaf to install features, and that the Docker image doesn't install any features by default. You'll need to choose which features to install based on your use-case.
4 ### OpenDaylight on DockerHub
5 A pre-built OpenDaylight Helium image is available on DockerHub. You can find it with `docker search opendaylight`:
7 TODO: Show example once ODL Helium image is on DockerHub
9 You can then pull it to your local system with `docker pull opendaylight/helium`:
11 TODO: Show example once ODL Helium image is on DockerHub
14 To run commands against Dockerized OpenDaylight, use `docker run`. `WORKDIR` is set to the root of ODL's install directory, `/opt/opendaylight`. Commands passed to `docker run` should be relative to that path.
16 Additional information about running Docker images can be found [here](https://docs.docker.com/reference/run/).
19 OpenDaylight Helium will expose subsets of the following ports. The actual set of exposed ports for a given controller is determined by the features installed via Karaf.
21 TODO: Verify that these are all of the ODL Helium ports and no extra
23 * 162 - SNMP4SDN (only when started as root)
29 * 2550 - ODL Clustering
30 * 2551 - ODL Clustering
31 * 2552 - ODL Clustering
33 * 4342 - Lisp Flow Mapping
35 * 5666 - ODL Internal clustering RPC
39 * 7800 - ODL Clustering
40 * 8000 - Java debug access
41 * 8080 - OpenDaylight web portal
43 * 8181 - MD-SAL RESTConf and DLUX
45 * 12001 - ODL Clustering
47 By default these ports will be mapped to random ports on the host system. The mappings can be discovered using the `docker ps` command.
49 If you wish to map these ports to specific ports on the host system, use the `-p <host-port>:<container-port>` flag with `docker run`. Note that [container linking](https://docs.docker.com/userguide/dockerlinks/) is generally recommend over hard-wiring ports with `-p`.