In this Quick NAS Topic video and the steps further below, I use docker to create a ubuntu container with Linux tools and iperf3.
This video is a supplement for the 10Gbe Home NAS Lab Part 7. In Part 7 I show how to use these containers to network performance test the 3 NAS devices I have.
- Create your own Docker Account – https://hub.docker.com/signup
- My Docker Repository – https://hub.docker.com/u/vmexplorer
- A Blog around using a Docker Image that has Iperf3 but limits you to server mode only.
Docker Ubuntu/iperf3 Basic Steps: Items in-between [ ] and the brackets should be removed
- On the NAS:
- Ensure devices can access the inet OR not covered in this blog, you’ll need to manually import and export images, etc.
- Ensure Docker-ce and if needed Shell-in-a-box and portainer are installed and basic configuration is done. The Synology didn’t need shell in a box or portainter
- Test Docker Install
- docker -v << Shows the version
- docker images << Show the images that are available
- docker ps << Shows the running containers
- Elevate local privileges to run docker commands
- It may be necessary to use ‘sudo’ in front of docker commands to get them to execute, followed by the admin/root password. Example: sudo docker ps
- Download and run Ubuntu
- docker pull ubuntu << Image is located here https://hub.docker.com/_/ubuntu
- docker run -it ubuntu bash << Creates an instance of this image for us to modify and opens up the terminal
- Update the Ubuntu running container
- apt-get -y update
- apt-get install iproute2
- apt-get install net-tools
- apt-get install iputils
- apt-get install iputils-ping
- apt-get install -y iperf3
- Test with ping and iperf3 -v
- Do not exit
- Commit and push the new image
- docker ps -l << Check for the latest running container, and note the Container ID of the container that was just updated with these steps
- docker commit [Container ID] [repository name]/[insert-container-name]
- docker images << will validate that the image is now there
- docker push [repository name]/[Container you want to push]
- Testing Steps