분류 전체보기
-
[Docker][따배도] 9. 빌드에서 운영까지Docker 2024. 4. 16. 15:04
이 포스팅은 따배도 유투브 시리즈를 기반으로 작성되어있습니다. Docker Compose 여러 컨테이너를 일괄적으로 정의하고 실행할 수 있는 툴 하나의 서비스를 운영하기 위해서는 여러개의 어플리케이션이 동작해야 함 컨테이너화 된 애플리케이션들을 통합 관리할 수 있음 YAML 파일을 docker-compose에게 전달하면 작성된대로 실행해 줌 Docker Compose로 컨테이너 실행하기 Docker Compose yaml 문 version compose 버전 버전에 따른 지원 문법이 다름 - version: “2” link 다른 컨테이너와 연계할 때 연계할 컨테이너 지정 webserver: image: wordpress link: db:mysql services 컴포즈를 이용해 실행할 컨테이너 옵션을 정..
-
[Docker][따배도] 8. 컨테이너간 통신Docker 2024. 4. 12. 14:33
이 포스팅은 따배도 유투브 시리즈를 기반으로 작성되어있습니다. 컨테이너간 통신 방법 Container Network Model docker0 virtual ethernet bridge: 172.17.0.0/16 L2 통신 기반 container 생성 시 veth 인터페이스 생성(sandbox) 모든 컨테이너는 외부 통신을 docker0를 통해 진행: 컨테이너의 게이트웨이 역할 container running 시 172.17.X.Y로 IP 주소할당 도커 데몬이 실행되면 docker0(도커 네트워크 인터페이스)가 생성됨 브릿지 네트워크를 지원하는 가상 네트워크 컨테이너 포트는 외부로 노출할 수 있을까? port-forwarding container port를 외부로 노출시켜 외부 연결 허용 iptables ..
-
[Docker][따배도] 7. Docker Container StorageDocker 2024. 4. 2. 10:18
이 포스팅은 따배도 유투브 시리즈를 기반으로 작성되어있습니다. 컨테이너 볼륨 컨테이너 이미지는 readonly run으로 실행하면 RW 레이어가 연결되고 하나의 프로세스가 되어 동작 RO 레이어: read-only RW 레이어: read write UFS(union file system), overlay: ro 여러개의 파일 시스템을 merge된 하나의 파일 시스템으로 mount 하는 기능 → rw, ro 레이어가 하나의 프로세스처럼 동작할 수 있게 함 컨테이너에 추가되는 데이터들은 별도의 RW 레이어에 저장 컨테이너를 삭제하면 rw 레이어가 같이 삭제됨 → 데이터(볼륨) 보존이 중요 데이터를 보존하려면 docker host에 특정 저장소 공간 생성(디렉토리, disk, …)하고 이곳에 보존하도록 할 수..
-
[Docker][따배도] 6. 컨테이너 리소스 관리하기Docker 2024. 3. 26. 09:54
이 포스팅은 따배도 유투브 시리즈를 기반으로 작성되어있습니다. 컨테이너 리소스 제한 컨테이너는 호스트 하드웨어 리소스의 사용 제한을 받지 않음 docker command를 통해 제한 할 수 있는 리소스 CPU Memory Disk I/O 메모리 리소스 제한 제한 단위는 b, k, m, g로 할당 옵션 의미 —memory, -m 컨테이너가 사용할 최대 메모리 양 지정 —memory-swap - 컨테이너가 사용할 스왑 메모리 영역에 대한 설정 - 디스크를 메모리처럼 사용 - 메모리 + 스왑 - 기본값: 메모리 2배 —memory-reservation —memory 값보다 적은 값으로 구성하는 소프트 제한 값 설정 —oom-kill-disable OOM(out of memory) Killer가 프로세스 kil..
-
[Docker][따배도] 5. 컨테이너 사용하기Docker 2024. 3. 19. 14:13
이 포스팅은 따배도 유투브 시리즈를 기반으로 작성 되어있습니다. 컨테이너 이미지 사용하기 다운 받은 이미지를 실행 클라이언트가 접속/서비스 운영 이미지 검색 docker search [옵션] 이미지 다운로드 docker pull [옵션] 다운 받은 이미지 목록 출력 docker iamges 다운 받은 이미지 상세보기 docker inspect [옵션] 이미지 삭제 docker rmi [옵션] 컨테이너 이미지 실행 라이프 사이클 컨테이너 생성 $ docker create [옵션] create는 기본적으로 백그라운드 실행 컨테이너 실행 $ docker start [옵션] [컨테이너 이름] 컨테이너 생성/실행 $ docker run [옵션] run은 pull → create → start 모두 실행 실행중인 ..
-
[Docker][따배도] 4. Docker RegistryDocker 2024. 3. 12. 10:21
이 포스팅은 따배도 유투브 시리즈를 기반으로 작성 되어있습니다. Registry란 : 컨테이너 이미지를 저장하는 저장소 Docker Hub: hub.docker.com Private Registry: 사내의 컨테이너 저장소 Docker Hub https://hub.docker.com 이미지 종류 official image - 도커가 직접 운영 verified publisher - 벤더가 제공 … 이미지 검색: $docker search [keyword] Private Registry 운영 사내에서 전용으로 사용 할 때 외부 네트워크 사용이 불가능한 곳에 만들어 사용 registry 컨테이너를 이용해 Private 컨테이너 운영 $ docker run -d -p 5000:5000 —restart alway..
-
[Docker][따배도] 3. 컨테이너 만들기Docker 2024. 3. 12. 10:06
이 포스팅은 따배도 유투브 시리즈를 기반으로 작성 되어있습니다. 프로그램과 실행환경을 모두 컨테이너로 만듬 MSA 환경의 Polyglot 애플리케이션 운영 Dockerfile 컨테이너를 만들수 있도록 도와주는 명령어 집합 쉽고 간단, 명확한 구문을 가진 텍스트 파일. top-down 해석 고유 지시어를 가짐 대소문자 구분 안함. 보통 가독성 향상을 위해서 사용함 $ mkdir bulid $ cd build $ vi dockerfile FROM node:12 COPY hello.js / CMD ["node", "/hello.js"] $docker build -t hellojs:latest .(현재 디렉토리 기준으로) Dockerfile 문법 #: comment FROM: 컨테이너의 BASE IMAGE(운영..
-
[Docker][따배도] 2. 컨테이너 자세히 살펴보기Docker 2024. 3. 6. 15:06
이 포스팅은 따배도 유투브 시리즈를 기반으로 작성 되어있습니다. 컨테이너, 컨테이너 이미지 컨테이너: 하나의 application 프로세스 독립되어 운영 (cpu, memory, network, disk…) 도커 호스트: 리눅스 커널이 있고 도커 데몬이 동작되는 시스템 없으면 컨테이너 동작 X 컨테이너는 하나의 커널을 공유 호스트 입장에서 커널은 하나의 프로세스 컨테이너 이미지 레이어는 복수개 일 수 있음 컨테이너 이미지 하드 디스크에 파일 형태로 저장 레이어 별로 파일 존재 read-only 컨테이너화가 되면 read, write 가능 컨테이너 이미지 실행하면 메모리에 프로세스 동작 실행중인 프로세스 동작 방식 hub.docker.com → 도커에서 운영하는 컨테이너 저장소(nginx, node, ph..