Starter packages (dependency sets)

- For Spring apps use Spring Boot starters (starter packages) from Spring Initializer (e.g.,
spring-boot-starter-web, spring-boot-starter-data-jpa). These bundle common dependencies so you don’t add each library manually.
- Example: if using JPA + REST, include
spring-boot-starter-data-jpa and spring-boot-starter-data-rest in pom.xml/build.gradle.
Spring Data REST quick note
@RepositoryRestResource(path = "customers") automatically exposes repository endpoints (no manual controller needed). Good for quick API prototypes.
Registries
- Docker images are stored in registries. Popular ones: Docker Hub (
docker.io) is the main public registry, but private registries (self-hosted or cloud) are common in enterprises.
Docker architecture
- Docker follows a client–server model: the Docker CLI (client) talks to the Docker Engine (daemon).
- Communication uses a socket (Unix socket or TCP/named pipe). Each service exposed over the network uses a port number (e.g.,
:8080).
Docker daemon (engine)
Daemon ports
- 2376 → Docker daemon over TLS/HTTPS (secure).