Will Docker work for me?

I’ve downloaded and ran the demos, but it’s not entirely clear to me if docker will work for my needs.

Specifically I run Linux test software that requires specific device drivers and connects to a variety of USB devices.

We are looking for a way to rapidly deploy test software (that tests hardware) in a manufacturing environment.
Is there a way to add a manifest file to a container during deployment or startup? Do containers have access to the network configuration? I need to specify IP addresses and hostnames in my manifest.

Just trying to find out if docker containers are like VMs where I can pre-install all my drivers and specify network settings. Does Docker include a virtual network adapter?

Docker is really a fancy way to run a process. It is good at providing userspace level isolation. Since you are testing drivers, and those are in kernel space, docker may not meet your needs. I’d expect you’d end up needing to run individual VMs so that one driver test doesn’t conflict with the driver test running in the kernel of another VM.

As for docker’s networking model, it does create a veth interface, and you can specify an ip address. There are different network backend drivers that can control all aspects of the network implementation for a container, but the default local bridge driver will create a bridge interface, a veth interface for each container, and set up a NAT for the containers.

Hopefully this is helpful.

1 Like