Microservices is the idea of splitting up applications into smaller, reusable and mostly independent chunks. These services then communicate via APIs with each other. By splitting up, services can be re-used and called by different clients. Also, if one service breaks, others are not necessisarily affected.
A typical basis for microservices is Kubernetes. In theory, microservices can also be designed in Docker Compose, however, Docker Swarm might be the better deal.