본문 바로가기

백엔드4

[Docker] Dockerfile 문법 Dockerfile은 애플리케이션을 패키징 하기 위한 간단한 스크립트이다. Dockerfile은 일련의 인스트럭션으로 구성돼 있는데, 인스트럭션을 실행한 결과로 도커 이미지가 만들어진다. 기본 다섯 가지 인스트럭션만으로도 엔간한(!) 애플리케이션을 도커로 패키징할 수 있다. FROM 모든 이미지는 다른 이미지에서 출발한다. 애플리케이션을 실행하는 데 필요한 런타임 이미지를 가져와야 한다. 예를 들어 Spring이면 Java를, Django라면 Python을. ENV 환경 변수 값을 지정하기 위한 인스트럭션이다. 값을 지정하기 위해 [key]="[value]" 형식을 따른다. WORKDIR 컨테이너 이미지 파일 시스템에 디렉터리를 만들고, 해당 디렉터리를 작업 디렉터리로 지정하는 인스트럭션이다. COPY .. 2023. 4. 14.
[Docker] 자주 쓰는 Docker 명령어 모음 도커 이미지 내려 받기 docker image pull [이미지 이름] 컨테이너 이미지 빌드하기 빌드하기 위해 이미지의 이름, 패키징에 필요한 파일의 경로를 추가로 지정해야 한다. 경로는 대개 온점(.)으로 표현하는데, Dockerfile이 존재하는 '현재 작업 디렉터리'라는 뜻이다. docker image build [경로] 옵션 설명 --tag [이름] 이미지의 이름을 지정한다. 도커 컨테이너 실행 docker container run [이미지 이름] 옵션 설명 -d, --detach 컨테이너를 백그라운드에서 동작한다. --name 컨테이너에 이름을 붙인다. (붙이지 않으면 무작위 ID로 생성됨) -e, --env [변수명]=[설정값] 컨테이너의 환경변수를 부여할 수 있다. -it 컨테이너와 대화식으.. 2023. 4. 13.
[Docker] 도커가 컨테이너를 실행하는 원리 도커 엔진 : 도커의 관리 기능을 맡는 컴포넌트이다. 로컬 이미지 캐시를 담당하므로 새로운 이미지가 필요하면 이미지를 내려받으며, 기존 이미지가 있다면 전에 내려받은 이미지를 사용한다. 호스트 운영체제와 함께 컨테이너와 가상 네트워크 등 도커 리소스를 만드는 일도 담당한다. 도커 엔진은 항시 동작하는 백그라운드 프로세스이다. 도커 엔진은 도커 API를 통해 맡은 기능을 수행한다. 도커API는 표준 HTTP 기반 REST API이다. 도커 엔진의 설정을 수정하면 이 API를 네트워크를 경유해 외부 컴퓨터로부터 호출할 수 없도록 차단하거나 허용할 수 있다. 도커 명령행 인터페이스(도커 CLI)는 도커 API의 클라이언트다. 우리가 docker 명령을 사용할 때 실제로 도커 API를 호출하는 것이 바로 도커 .. 2023. 4. 12.
[서평/23-11] 스프링 부트 코딩 공작소 독서기간_2023년 1월 15일 ~ 2023년 1월 30일 저자_크레이그 월즈 출간일_2016년 초 'Spring In Action' 저자인 '크레이그 월즈'의 Spring Boot 판 저서라 하여 읽어보았다. 영문 책 제목은 'Spring Boot In Action'인데 왜 한국어 제목은 '스프링 부트 코딩 공작소'인지 의문이다. 제목만으로 책의 quality를 떨어트리는 느낌이다. 스프링 부트 입문책은 아니다. 스프링 부트를 사용한 웹 페이지 만들기! 같은 SSR 프로젝트를 만드는 서적이 아니고 스프링 부트의 내부 흐름을 설명한다. 여타 '인 액션' 시리즈가 그렇듯, 개발 경험이 어느정도 있어야 이 책을 읽는 게 수월할 것이다. 아무튼 출시된 지 굉장히 오래 되었다. 그래서인지 책에 나온 내용들이 현.. 2023. 2. 11.