본문 바로가기

DevOps5

Dockerfile 작성하기 FROM - 모든 이미지는 다른 이미지로부터 출발한다. - 이 이미지는 diamol/node 이미지를 시작점으로 지정한다. - diamol/node 이미지에는 web-ping 애플리케이션을 실행하는 데 필효한 런타임인 Node.js가 설치돼 있다. ENV - 환경 변수 값을 지정하기 위한 인스트럭션이다. - 값을 지정하기 위해 [key] = "[value]"형식을 따른다. - 이 스크립트에서는 ENV 인스트럭션이 세번 사용돼 세 개의 환경 변수를 설정했다. WORKDIR - 컨테이너 이미지 파일 시스템에 디렉터리를 만들고, 해당 디렉터리를 작업 디렉터리로 지정하는 인스트럭션 - 리눅스와 윈도우 컨테이너 모두 구분자로 슬래시를 사용한다. CMD - 도커가 이미지로부터 컨테이너를 실행했을 때 실행할 명령을 .. 2023. 2. 23.
Docker 허브에 공유된 이미지 사용하기 실습 예제 애플리케이션(web-ping) -> 웹 사이트가 노출되는지 확인하는 기능을 함 -> 컨테이너에서 실행돼 지정된 URL에 HTTP 요청을 3초마다 보내는 동작을 컨테이너가 종료될 때가지 반복한다. 1. web-ping 애플리케이션의 컨테이너 이미지를 내려받기 - $docker image pull diamol/ch03-web-ping -> 도커가 가장 먼저 이미지를 찾기 위해 접근하는 저장소인 도커 허브에 저장 -> 이미지를 제공하는 저장소를 레지스트리(registry)라고 함 -> 도커 허브는 무료로 제공되는 공개 레지스트리 2. 내려받은 이미지로 컨테이너를 실행하고 실행된 애플리케이션의 기능을 확인 - $docker container run -d --name web-ping diamol/ch0.. 2023. 2. 22.
Docker 기본 명령어 1. 컨테이너로 애플리케이션 실행하기 "$docker container run (애플리케이션 이름)" - docker container run 명령은 컨테이너로 애플리케이션을 실행 하라는 도커 명령어 - 이 애플리케이션은 미리 도커로 실행하도록 패키징돼 누구나 내려받을 수 있도록 공유된것 - 이미지를 이용해 컨테이너를 실행하려면 먼저 이미지가 있어야 한다. - 명령을 처음 실행했던 시점에는 우리가 이미지를 갖고 있지 않았다. (unable to find image locally) - 도커가 이미지를 내려받음 (Pulling from 애플리케이션) - 컴퓨터 이름 fcac12c854c9(매번 바뀜) - IP 주소는 172.17.0.2이다.(매번 바뀔 확률이 높음) 2. 컨테이너를 원격 컴퓨터처럼 사용 "$.. 2023. 2. 21.
Docker가 컨테이너를 실행하는 원리 도커의 워크 플로우 "빌드" -> " 공유" -> "실행" 도커 엔진(Docker Engine) - 도커의 관리 기능을 맡는 컴포넌트다. 로컬 이미지 캐시를 담당 하므로 새로운 이미지가 필요하면 이미지를 내려받으며, 기존 이미지가 있으면 전에 내려받은 이미지를 사용한다. - 호스트 운영체제와 함께 컨테이너와 가상 네트워크 등 도커 리소스를 만드는 일도 담당한다. - 도커 엔진은 항시 동작하는 백그라운드 프로세스다. - 도커 API는 표준 HTTP기반 REST API다. - 도커 엔진의 설정을 수정하면 이 API를 네트워크를 경유해 외부 컴퓨터로 부터 호출 할 수 없도록 차단하거나 허용할 수 있다. 도커 명령행 인터페이스(Docker command-line interface) - 도커 CLI는 도커 API.. 2023. 2. 20.
Docker 컨테이너와 이미지 이해하기 Dokcer란? - 도커는 컨테이너라는 경량 단위로 애플리케이션을 실행하는 기능을 제공하는 플랫폼이다. Dokcer 워크플로의 핵심 빌드 -> 공유 -> 실행 - 애플리케이션을 컨테이너에서 샐행 할 수 있도록 패키징 - 다른 사람이 패키지를 사용할 수 있도록 공유 - 패키지를 내려받은 사람이 컨테이너를 통해 애플리케이션을 실행 컨테이너란 무엇인가? 컨테이너는 말 그대로 물건을 담는 컨테이너와 다를 게 없다. -> 호스트명, IP 주소, 파일 시스템까지 이들은 모두 도커가 만들어낸 가상 리소스다. 이들이 서로 엮여 애플리케이션이 동작할 수 있는 환경이 만들어진다. -> 상자 안에서는 상자 밖의 환경을 볼 수 없다. 그러나 이 상자는 어떤 컴퓨터상에서 동작하는 것이고, 이 컴퓨터는 이 상자 말고도 다른 상자.. 2023. 2. 19.