When I picked up Docker, I had already been using other container technologies for several years so I personally don't know of any modern or complete learning resources that I can recommend. However I would recommend starting out by understanding what namespaces are, i.e. how container isolation works. You should also be aware of what cgroups are and how they are used, but you won't need profound knowledge of them when starting out. The man pages [1] [2] might be a good place to start.