프로세스: 메모리에 올려져 실행중인 프로그램
컨테이너(Container): 격리된 환경에서 작동하는 프로세스입니다.
도커의 특징 - 확장성/이식성
- 도커가 설치되어 있다면 어디서든 컨테이너를 실행할 수 있습니다.
- 특정 회사나 서비스에 종속적이지 않습니다.
도커의 특징 - 표준성
- 도커를 사용하지 않는 경우 ruby, nodejs, go, php 등등 만든 서비스들의 배포 방식은 제각각 다 다릅니다.
- 컨테이너라는 표준으로 서버를 배포하므로 모든 서비스들의 배포과정이 동일해집니다.
도커의 특징 - 이미지
- 이미지에서 컨테이너를 생성하기 때문에 반드시 이미지를 만드는 과정이 필요합니다.
- Dockerfile을 이용하여 이미지를 만들고 처음부터 재현이 가능합니다.
- 빌드 서버에서 이미지를 만들면 해당 이미지를 이미지 저장소에 저장하고 운영서버에서 이미지를 불러옵니다.
컨테이너를 실행하기 위한 압축파일이라고 생각하면됩니다. 그래서 꼭 이미지 만드는 과정이 필요하고 이미지는 Docker file이라는 스크립트로 만듭니다.
도커의 특징 - 서버관리
- 설정은 보통 환경변수로 제어합니다.
- EX MYSQL_PASS = password와 같이 컨테이너를 띄울 때 환경변수를 같이지정 합니다.
- 하나의 이미지가 환경변수에 따라 동적으로 설정파일을 생성하도록 만들어야합니다.
도커의 특징 - 자원관리
- 컨테이너는 삭제 후 새로 만들면 모든 데이터가 초기화됩니다.
- 업로드 파일을 외부 스토리지와 링크하여 사용하거나 s3같은 별도의 저장소가 필요합니다.
- 세션이나 캐시를 memcahed나 redis와 같은 외부로 분리
'Docker' 카테고리의 다른 글
컨테이너(Container) (0) | 2022.12.01 |
---|---|
Docker - 모든 image와 container삭제하기 (0) | 2021.12.09 |
Docker- wsl2에서 ubuntu:20.04 LTS 환경 system clock과 현재시각(timezone) 때문에 나타나는 에러 해결법 (0) | 2021.12.09 |
Docker - 컨테이너(Container) 만들기 (0) | 2021.11.11 |
Docker - container and image (0) | 2021.11.10 |
댓글