Docker

김선우·2022년 6월 30일
0

Posting

목록 보기
56/60
post-thumbnail

똑같은 환경에서 배포될 수 있도록 하는 도구.(운영체제, 세팅 등)

초반에는 가상머신 (ex. 인스턴스), 컴퓨터안에 가상 컴퓨터를 넣는방식으로 해결했지만, 컴퓨터의 성능이 저하된다는 단점이 있어서

docker가 도입되었다.

도커는 부팅 등 운영체제의 핵심 기능(커널)은 공유하는 개발자도구이다.

=> OS전체를 새로 설치하지 않아도 됨 => 겹치는 기능을 새로 설치하지 않으므로 성능에 영향이 덜 감.

--> window, linux, Mac과 상관 없이 충돌이 없음

  • 필요한 도구들이 이미 세팅되어있기 때문에 편함

이러한 이유들 때문에 협업을 위해서는 필수가 되어버렸다.

정리

  1. 개발, 배포환경 통일
  2. 개발 툴 조기세팅
  3. 가벼운 가상컴퓨터

doker는 개발 환경 요소들이 설치된 모습을 이미지로 저장한다. 저장한이미지는 클라우드에 올려지고, 이미지들이 서로 연결되서 동작하는 설정은 문서(Dockerfile)로 저장된다. 마지막으로 새 컴퓨터에서 복사한 문서의 내용대로 이미지를 다운받아 설치한다. 이전 가상머신과 비슷하지만 효율성, 경제성에서 큰 이점을 가져갈 수 있고 불필요한 추가 운영체제의 설치가 필요가 없다.

-> Doker(우)와 가상머신(좌)의 비교

설치

deb파일 설치

터미널에서 sudo dpkg -i '파일이름'(본인 컴퓨터 우분투라서 좀 더 복잡하게 설치함, docs참고 필요)

(우분투 설치방법 참고: https://kindloveit.tistory.com/18)

도커 허브에서는 npm 다운 받는 것처럼 다른 사람들이 올려놓은 이미지를 다운로드 할 수도 있다. 또한, 한 컴퓨터에서 다른 환경의 여러 서비스를 실행해야 하는 경우, 컨테이너로 분리되어 있기 때문에 서로 독립되어 실행 될 수 있다.

이것들을 위한 명령어이다.

여러가지 컨테이너를 다룰 때 좀 더 복잡한 설정이 필요하게 된다. 이럴 때 Docker-compose명령어로 docker-compose.yml 파일을 미리 만들어서 설정을 어떻게 할지 적어논다. 그리고 docker-compose up 명령어를 입력해서 컨테이너를 실행합니다.

profile
생각은 나중에..

0개의 댓글