This is a base image for a dockerized Ryu controller application. It contains a small set of python packages that you are likely to use when creating Ryu controllers and, of-course, it contains Ryu itself.
All images are available via the GitHub Container Registry (ghcr.io) and target ARM and x86 architectures.
ghcr.io/scc365/ryu:latest(v4.34)ghcr.io/scc365/ryu:4.33ghcr.io/scc365/ryu:4.32ghcr.io/scc365/ryu:4.31ghcr.io/scc365/ryu:4.3
This can simply be used as is like so:
ARG RYU_VERSION=latest
FROM ghcr.io/scc365/ryu:${RYU_VERSION}
WORKDIR /controller
COPY controller.py .
CMD [ "--verbose", "./controller.py" ]⚖️ Equivalent to running
ryu-manager --verbose ./controller.py
It is not suggested that you alter the packages in the requirements.txt file here. Instead, use a separate file specifically for your controller.
Think that a package is so commonly used in Ryu controller creation that it should be in the base image (apk or pip)? Feel free to create a PR updating requirements.txt or the Dockerfile, but please write a small justification in the PR.