더북(TheBook)

또 라즈베리 파이를 사용했다면 아키텍처 정보가 달라진다(armv7l은 ARM 아키텍처의 32비트 프로세서, x86_64는 인텔의 64비트 프로세서를 각각 의미한다).

---------------------
I'm running on:
Linux 4.19.42-v7+ armv7l
---------------------

아주 간단한 애플리케이션이지만 이 과정에서 도커를 사용하는 워크플로의 핵심을 볼 수 있다. 먼저 애플리케이션을 컨테이너에서 실행할 수 있도록 패키징하고(예제 애플리케이션은 내가 패키징했으나, 다음 장에서는 독자 여러분도 패키징을 직접 해 볼 것이다), 다른 사람이 패키지를 사용할 수 있도록 공유한 다음, 이 패키지를 내려받은 사람이 컨테이너를 통해 애플리케이션을 실행하는 것이다. 도커에서는 이 과정을 빌드, 공유, 실행이라고 부른다.

빌드, 공유, 실행은 매우 강력한 개념이다. 아무리 복잡한 애플리케이션이라도 모두 이 과정을 거치기 때문이다. 여기서는 간단한 스크립트이지만, 다양한 라이브러리를 사용하고 많은 수의 컴포넌트로 구성된 자바 애플리케이션이라도 이와 똑같은 과정을 거친다. 그리고 도커를 실행할 수 있는 환경이라면 어디서든 실행할 수 있도록 도커 이미지를 만들 수 있다. 이런 방법으로 도커의 핵심적인 이점인 이식성이 확보된다.

같은 명령을 한 번 더 입력해 또 다른 컨테이너를 실행하면 어떻게 될까?

실습 조금 전의 명령을 한 번 더 입력해 보자.

docker container run diamol/ch02-hello-diamol

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.