Quando falamos de Docker, estamos falando de containeres, ou seja, são aplicações empacotadas que rodam no nível do Kernel do sistema operacional, evitando a necessidade de deploy usando Virtual Machines e Hypervisors. Essas aplicações podem ficar em um local central para controle e geranciamento, como por exemplo, o Docker Hub Diversas imagens Docker podem ficar agrupadas para um deploy mais fácil, dentro do Docker Compose, que nada mais é do que um arquivo .yaml com a estrutura e configuração de todas as imagens que a aplicação necessitam para funcionar.
Detalhes em: docker-compose docker-conceitos-fundamentais docker-containers docker-imagens docker-redes docker-volumes