Docker is a client/server application composed of the Docker CLI client and Docker daemon server
- Docker Daemon listens for Docker API requests and manages Docker objects such as images
- Docker Client sends user commands to the Docker Daemon which executes the commands
- Docker Registries stores Docker images
- Docker Image is a read-only template with instructions for creating a Docker container
- Docker Container is a runable instance of the image
Properties
- (Flexible): All complex applications can be containerized.
- (Lightweight): Containers utilize and share the host kernel.
- (Interchangeable): Updates and upgrades can be deployed instantly.
- (Portable): Can be built locally, deployed to cloud and virtualization, and run anywhere.
- (Scalable): Container replicas can be increased and deployed automatically.
- (Stackable): Vertical or horizontal design of services is very easy.
Alpine Linux is lightweight and secure.
An image is an executable package that includes everything needed to run an application, including code, runtime, libraries, environment variables, and configuration files.
A container is a runtime instance of an image, and when an image runs as a container, it is loaded into memory.
This concept of images is a very important concept in container configuration. Docker images can be logically divided into base images, which are called basic images, and images that include the applications and libraries you need, though the boundaries of this division are somewhat ambiguous.
Containers operate by sharing the same host system kernel among multiple containers.
In contrast, other virtualization methods work by having a hypervisor that owns control over host resources.
Docker Components

dockerfile
Docker 한번 해볼까?
힙스터 개발자가 되기위한 첫 단추는 Docker입니다. 뭐만하면 Docker를 사용하는데요, 그만큼 편리합니다. 개발환경을 맞추는 것도 쉽고 다른 곳에서 빌드하기도 쉽습니다. 그렇지만 깃헙 저장소에 Dockerfile이 있다는 점이 가장 멋지죠! 그럼 한번 Docker를 영업해보겠습니다. Dockerfile은 이렇게 생겼습니다. FROM에는 기반으로 쓸 환경(누군가가 만들어 놓은) RUN에는 설치하는 명령들이 있습니다. 이걸로 이미지를 만들어서 배포하는거죠. 아주 멋집니다.
https://medium.com/@haho6629/docker-%ED%95%9C%EB%B2%88-%ED%95%B4%EB%B3%BC%EA%B9%8C-b061ca10b64d



Seonglae Cho