0

I'm interested in using Docker to run tests on Puppet modules.

However, a Docker container is not a fully fledged OS and you can't perform every task (As I learnt when trying to test a swapfile module)

Is there a comprehensive list of what is impossible to do in a Docker container, such as managing swap?

Community
  • 1
  • 1
Peter Souter
  • 5,110
  • 1
  • 33
  • 62
  • I doubt there is a comprehensive list. But as a rule of thumb, everything that is "pure software" should be unproblematic, whereas stuff that requires low-level access to hardware (or even just low-level access to certain aspects of the operating system) can potentially trip you over. Many limitations stem from the technologies used and from the restrictions, concepts (sometimes) and bugs of those technologies. Most notably Linux kernel namespaces and the aufs-based layered file system. – das-g Feb 27 '16 at 14:16
  • Some of the limitations can be worked around (and traded for other limitations) by swapping out those technologies, as Docker supports more than one technology for providing some of the aspects it relies on. (E.g. you can use different virtualization technology and/or a different union-capable file system.) – das-g Feb 27 '16 at 14:18

0 Answers0