These are mostly notes for personal reference. Suggested read: Infrastrucure as Code terminologies.
Immutable: Immutable means that a container won't be modified during its life: no updates, no patches, no configuration changes.
Ephemeral: Temporary i.e. The container can be stopped and destroyed, then rebuilt and replaced with an absolute minimum set up and configuration very quickly.
Immutable: Containers are not changed once they are running, they are re-deployed for any config change
Seperation of Concerns: Contianer shouldn't contain unique data mixed in with application bianaries
Persistence: Data present on writable-layer(container) gets wiped out when that container no longer exists
Docker does not persist any data by default, read more about storage and data persistence.
- docker-compose: A CLI tool used for local dev/test automation with YAML files for docker
A docker compose file has versioning