Docker를 이해해보자
0. 학습 참고자료
1. 도커 교과서를 통해 친해지기
도커 컨테이너로 간단한 이미지 실행해보기
docker container run diamol/ch02-hello-diamol
- 컨테이너를 실행시키는 명령어
run
뒤에 언급된 이미지가 없다면 이미지를 내려받는 과정인 pull 단계를 거치고 난 후 이미지를 실행(by 컨테이너)
컨테이너가 무엇인가??
- 격리와 밀집의 관계를 동시에 만족시키는 방법
- 격리: 외부와 독립된 환경을 요구하는 것
- 밀집: 컴퓨터 CPU와 메모리가 허용하는 최대한의 어플리케이션을 실행하는 것
2. 원격 컴퓨터처럼 컨테이너 활용하기
docker container run --interactive --tty diamol/base
--interactive
는 플래그로 컨테이너에 접속한 상태가 된다는 뜻
--tty
는 플래그로 터미널 세션을 통해 컨테이너를 조작한다는 뜻
- diamol/base라는 이미지에서 상호작용을 하겠다는 의미
- 빠져나올 땐
quit
을 입력
docker container logs [컨테이너ID]
- 책에서는 대괄호([]) 이후의 명령어가 없으면 대상 컨테이너에서 수집된 로그를 모두 출력한다고 했지만 M1 환경에선 명령어가 오류만 보여준다
docker container inspect [컨테이너ID]
- 컨테이너 상태에 대한 정보를 JSON 포맷으로 제공
3. 웹 사이트를 컨테이너로 호스팅해보기
docker container run -d --publish 8088:80 diamol/ch02-hello-diamol-web
-d(--derach)
는 명령어를 실행하면 백그라운드에서 계속 동작하도록 하는 플래그
--publish
는 컨테이너의 포트를 호스트 컴퓨터에 공개한다는 뜻의 플래그
- 내 컴퓨터의 8088번 포트를 도커 컨테이너의 80번 포트와 연결
- 도커 컨테이너가 동작하고 있음을 알고 싶으면 여기를 눌러 확인해보기 (단, 글에 적힌 주소와 다르면 연결이 안됨)
docker container stats
명령어를 통해 동작시킨 컨테이너가 얼마만큼의 리소스를 잡아먹고 있는지 확인할 수 있다