Suggestions to improve knowledge on docker I am new to Docker and tried some hands-on (not deeper learned upto basics of image,container) by following docker official documentation.

To take my learning curve to next level, I have implemented what I read by taking sample applications like "Dockerising a Node.js and MongoDB App by nida sajid", run a sample java restful webapplication which takes name and 
email and storing it into mysql container. I've done this by using 2 containers:


tomcat - Used to deploy war file
mysql - To store the data(name&amp;email))


My question: what are the advanced concepts that I can learn and, can you suggest me so that I can improve my knowledge


What are the advanced concepts in docker other than this (like used in real world scenario)?
Any suggestions (like websites,videos) to improve my knowledge?
How to use Docker with Jenkins?
Some good next topics for the real world are...


Security. There are several security concerns with docker, for example 


Is there a problem running stuff inside the container as root?
Is there a problem giving non-root users on the host access to the docker daemon?
Is there a problem with the docker daemon running as root on the host?
All three can be solved with docker out-of-the-box. Learn how to.

Networking. Check out the docker networking options.
Image sizes are a recurring problem, especially if you build your stuff inside a docker image. Your average naive first build image may be 1GB or more - try to get the same image, whatever it is, to 500, 300 or 200 MB.
Docker volumes; how to get configuration into your containers; etc.
Private artifact repositories.
Explore the environment: docker compose, docker swarm, etc.
Finally, take  a big leap on to your next technology... OpenShift? Kubernetes?