• 로그인
  • 장바구니에 상품이 없습니다.

Docker 설치 & 이미지와 컨테이너 개념

 

0:00 Docker 설치

1:25 Docker desktop 구경

3:42 이미지 실행해보기

7:01 웹서버 이미지 실행해보기 

 

 

 

터미널 명령어로 docker 조작하는 것도 가능하지만

공식 GUI 프로그램을 쓰면 그걸로 훨씬 편하게 docker 기능들을 사용할 수 있습니다.

구글에서 "docker desktop"을 검색해서 설치해옵시다.

설치하면 docker 엔진, docker compose, docker CLI 등 필요한걸 전부 설치해줍니다.

 

 

 

 

 

- 윈도우는 아마 대부분 AMD64 (일명 x86-64) 이거 설치하면 될 것이고 ARM 어쩌구 CPU를 쓰는 경우에 ARM을 선택합시다.

- 맥북은 CPU가 M1 이상인 분들은 apple silicon 선택합시다.

- 윈도우는 아마 컴퓨터 재시작까지 해야합니다.

- 윈도우는 까만 창이 뜨고 리눅스 설치한다고 뜨면 아무 버튼이나 눌러서 설치합시다.

- 아무튼 설치하고 docker desktop 실행까지 해봅시다.

 

 

 

 

 

 

자주겪는 에러

 

1. 윈도우는 Docker desktop 시작시 hcs_e_hyperv_not_installed 이런 에러가 뜨면 

어떻게 하냐면

 

 

(1) 시작 → 검색 → Windows 기능 메뉴 검색해서 들어가기 → Windows 하이퍼바이저에 v 표시하고 확인누르기

 

 

 

 

(2) 컴퓨터 재시작 후 Del 또는 다른 키를 연타하면 BIOS 설정을 만질 수 있는데

AMD CPU는 SVM 또는 AMD-V 이런걸 찾아서 Enabled로 바꾸고

Intel CPU는 VMX을 찾아서 Enabled로 바꾸고 재시작하면 됩니다.

 

- 가끔 VTX, Virtualization 어쩌구 이런 이름일 수 있어서 여러분 "컴퓨터 메인보드 이름 + 가상화 켜기" 이런거 검색해보는게 빠릅니다.

- BIOS설정의 오버클럭 메뉴에 자주 보입니다.

 

[collapse]

 

 

 

2. 윈도우는 The network name cannot be found. 이런 에러가 뜨면

시작 - 검색 - powershell 실행 후

wsl --unregister docker-desktop

입력하고 docker desktop 껐다가 다시 켜보도록 합시다.

 

3. 시스템 리소스 부족 에러가 뜨면

아마 램 부족일 수 있어서

램을 잡아먹는 프로그램을 끄거나, 윈도우 재부팅 후 Docker desktop만 실행해봅시다.

아니면 강의에서 소개하는 식으로 터미널에서 명령어들을 실행하는 식으로 docker를 사용합시다.

터미널 켜려면 윈도우는 검색에서 "powershell" 검색해서 실행하고

맥북은 런치패드에서 "터미널" 검색해서 실행하면 됩니다.

 

 

 

 

 

 

 

 

이미지

 

저번 시간에 밀키트라고 비유해서 설명한걸 멋있는 말로 이미지라고 부릅니다.

이미지에는 OS, 실행에 필요한 프로그램, 라이브러리, 소스코드 등이 들어있습니다.

이미지는 실행도 쉽습니다.

 

이미지를 사용하면 환경 맞추기도 쉽고, 내 프로그램을 다른 곳에서 실행하기도 쉬운데

예를 들어서 웹서버 프로그램을 열심히 만들어놨는데 그걸 서버 컴퓨터에 배포하고 싶으면 

- AWS에서 컴퓨터 한 대를 빌려서

- 컴퓨터에 코드옮기고

- 필요한 프로그램 설치하고

- 웹서버 실행하고 지랄을 해야합니다.

 

하지만 도커를 쓰면

- 내 작업환경이랑 코드를 그대로 이미지로 만든 다음에

- 이미지를 그 서버컴퓨터로 옮겨서 실행만 눌러두면 됩니다.

뭔가 도커 이미지로 싸매놓으면 실행이 느리고 비효율적이지 않을까 싶은데 매우 가벼워서 큰 걱정은 안해도 됩니다.

 

 

 

 

 

 

이미지 실행해보기

 

이미지를 하나 실행해봅시다.

하지만 이미지 만들어둔게 없기 때문에 남들이 만들어놓은 이미지를 한번 다운받아서 실행해봅시다.

 

 

 

Docker desktop 상단에 검색창이 있을텐데

여기서 docker hub이라는 곳에 전체공개로 올라와있는 이미지들을 다운받아볼 수 있습니다.

Docker hub은 그냥 docker 이미지들 모아놓은 저장소입니다.

 

리눅스 OS 설치된 이미지 다운받고 싶으면 ubuntu, alpine 이런거 검색해보시면 되고

아니면 Nodejs나 파이썬 설치되어있는거 다운받고 싶으면 역시 검색해보면 됩니다.

저는 테스트삼아서 hello world 라는 이름의 이미지 한번 다운받아보겠습니다.

그냥 hello 어쩌구 글자 몇개 출력해주는 이미지입니다.

다운 수 가장 많은거 다운받아오면 됩니다.

 

 

 

 

▲ Tag라고 써있는 건 버전이랑 비슷한 말입니다. Pull 누르면 다운가능합니다.

 

 

 

docker pull 이미지이름:태그명

실은 터미널에서도 docker 명령어 입력하면 남자답게 이미지 다운로드가 가능합니다.

Docker desktop 하단에 터미널 오픈하는 버튼이 어딘가에 있을텐데

거기다가 위의 명령어 입력하면 되겠습니다.

그럼 docker hub에서 찾아서 가져와줍니다.

 

 

 

 

▲ 다운받은 이미지는 images 메뉴에 추가됩니다.

아니면 터미널에 상남자처럼 docker image ls 입력해도 이미지 목록을 볼 수 있습니다.

 

 

 

 

 

 

컨테이너

 

 

 

▲ 이미지 실행하려면 이미지 오른쪽에 재생버튼 누르면 됩니다.

 

docker run 이미지이름:태그명

아니면 터미널에서 실행해볼거면 이런거 입력하면 실행됩니다.

 

이미지를 실행하면 컨테이너라는게 뜨고 이미지가 그 안에서 실행됩니다.

컨테이너는 이미지 하나를 실행하고 있는 가상 컴퓨터라고 보면 되겠습니다.

 

 

 

 

 

근데 다운받은 hello-world 이미지는

"터미널에 hello 어쩌구 글자정도 출력해주세요~"

그 정도만 들어있기 때문에 글자 몇개만 출력해주고 컨테이너가 정지된걸 볼 수 있습니다.

시시해서 죽고싶다면 좀 더 다이나믹한 이미지도 실행해봅시다.

 

 

 

 

 

▲ dockercloud/hello-world 이미지를 다운받아서 실행해봅시다.

얘는 다이나믹하게 웹서버를 하나 실행해주는 이미지입니다.

 

 

 

 

▲ 그 다음에 실행하는데 포트번호를 8080으로 기재하고 실행해봅시다.

"내 컴퓨터의 8080포트로 들어가면 그 컨테이너의 80번 포트로 안내해주세요~" 라는 뜻인데

자세한건 나중에 알아봅시다.

 

아무튼 실행했으면 당장 웹브라우저 켜서 localhost:8080 주소로 들어가봅시다.

그러면 이상한 웹페이지가 하나 뜨는데 웹서버가 실행중이라 그렇습니다.

누가 localhost:8080으로 방문하면 웹페이지를 하나 보내주는 웹서버입니다.

아무튼 웹서버같은 프로그램도 이미지로 만들어서 돌려볼 수 있다는 것을 체험해보려고 한 짓입니다.

 

결론은

1. OS, 개발환경, 소스코드 등을 담아서 이미지를 만들 수 있고

2. 이미지를 실행중인 가상컴퓨터가 컨테이너구나

이 정도 이해하고 지나가면 되겠습니다.

다음 시간엔 직접 이미지를 만들어봅시다.

 

 

 

 

 

 

 

SEE ALL Add a note
YOU
Add your Comment

About

현재 월 700명 신규수강중입니다.

  (09:00~20:00) 빠른 상담은 카톡 플러스친구 코딩애플 (링크)
  admin@codingapple.com
  이용약관
ⓒ Codingapple, 강의 예제, 영상 복제 금지
top

© Codingapple, All rights reserved. 슈퍼로켓 에듀케이션 / 서울특별시 강동구 고덕로 19길 30 / 사업자등록번호 : 212-26-14752 온라인 교육학원업 / 통신판매업신고번호 : 제 2017-서울강동-0002 호 / 개인정보관리자 : 박종흠