Platform/Docker

(도커실습4) 도커 컨테이너를 실행해보자아아아아아

무링요짱짱맨 2022. 3. 27. 13:28
반응형

이 실습은 '도커/쿠버네티스를 활용한 컨테이너 개발 실전 입문(위키북스)' 를 공부하면서 작성한 글입니다

 

생성한 이미지를 활용해서 도커 컨테이너 실행을 해보자. 

 

docker container run test3/echo:latest

도커 컨테이너 실행

서버는 제대로 실행이 되었으나 계속 포어그라운드 동작으로 실행하다 보니, 이후에 조작이 불가능해졌다.

여기서 빠져나가기 위해서는 cmd에 Ctrl+C 을 입력해서 서버를 중지시키고 나오도록 하자.

 

그러면 백그라운드에 실행할 수 있는 방법은 ?   바로 옵션 -d를 작성하는 것이다

 

docker container run -d tes3/echo:latest

 

도커 컨테이너 백그라운드 실행

실행 시, 아래에 나오는 것은 컨테이너 ID를 의미하고 이 컨테이너는 unique id(유일 식별자)로 향후에 컨테이너를 컨트롤 할때 사용되어진다. 

 

이후 도커 Container 목록을 확인해보면 

요로코롬 확인할 수 있다. 다만 Container ID가 12자리로 축약된 것을 확인 할 수 있는데, 이렇게 생략된 값으로도 사용할 수 있다. (비슷한 예로 session id 도 short text, long text가 있듯이~ ) 

 

자 이번에는 이 도커이미지가 웹서비스 포트 8080으로 서비스를 실행하는 어플리케이션을 담고 있기에, 이를  호스트포트와 컨테이너 포트를 연결해서 실제 웹서비스를 호출해보도록 하자. 

 

포트를 연결하는 것을 '포트 포워딩'이라고 하며 -p 라는 옵션을 활용해서, ' -p 호스트포트:컨테이터포트 ' 이렇게 쓴다. 

 

docker container run -d -p 9000:8080 test3/echo:latest

아까 백그라운드에 실행해놓은 docker 을 종료하고 바로 실행해보자.

 

실행종료는 간단하다. 

docker container stop "container id"

도커 컨테이너 종료

도커이미지를 포트포워딩 및 백그라운드(데몬)으로 실행 

 

도커 포트포워딩 후 curl을 활용한 웹서비스 호출

 

끝!

반응형