Docker 5

Docker 총 정리

Docker란? 리눅스의 응용 프로그램으로 프로세스 격리 기술을 이용하여 컨테이너 실행 및 관리를 해주는 것이 도커다. 도커를 사용하는 이유? 각 개발자가 개발 세팅을 하면 버전 문제 등의 문제가 나올 수가 있다. 한 명의 개발자가 개발 세팅을 해놓고 이미지화하여 컨테이너에 저장을 하면 나머지 개발자들은 이미지만 받아서 사용만 하면 된다. vm과 docker의 차이점은? vm은 hostOS위에 새로운 OS를 설치하여 메모리 공간을 많이 차지한다. 반면 Docker는 host OS위에 필요한 라이브러리, 코드 등만 만들어서 설치하기 때문에 속도가 빠르고 메모리 공간을 많이 차지하지 않는다. Docker 이미지란? 코드, 시스템 도구, 시스템 라이브러리 및 설정과 응용 프로그램을 실행하는데 필요한 모든 것을..

컨테이너/도커 2022.05.22

docker copy vs volume

COPY docker copy는 로컬에 있는걸 도커 컨테이너로 복사 해준다. Volume docekr Volume은 도커 컨테이너가 복사가 아니라 로컬에 있는것을 매핑 하여 가져오기 때문에 더 빠르다. Volume 사용해서 어플리케이셔 실행 하는 법 docker run -p 3000:3000 -v /usr/src/app/node_modules -v ${pwd}:/usr/src/app -v /usr/src/app/node_modules -> 호스트 디렉토리에 node_modules은 없기에 컨테이너에 맵핑을 하지 말라고 하는것 -v ${pwd}:/usr/src/app -> pwd 경로에 있는 디렉토리 혹은 파일을 /usr/src/app 경로에서 참조 하라는 것이다.

컨테이너/도커 2022.05.18

docker react 설치

docker react 설치 설치 전 node.js 가 있는지 확인해야 한다. cmd 및 터미널을 열어 node -v 로 확인해보자 1. 바탕 화면에 폴더를 하나 생성한다. 2. Visual Studio Code에 생성한 파일을 넣어준다. 3. 터미널을 열고 npx create-react-app ./ 작성해준다. 4. 설치가 끝나면 아래와 같이 나오는걸 확인할 수가 있다. 개발 단계 명령어 설치가 끝나고 실행이 잘 되는지 아래 명령어로 확인해보자. npm run start 테스트 단계 명령어 개발이 완료되었으면 개발한 것에 문제가 있는지 없는지 테스트해볼 수가 있다. 아래 명령어로 확인해보자 npm run test 빌드 단계 명령어 테스트까지 완성이 된다면 이제는 배포를 해서 다른 사람들도 이용할 수 있..

컨테이너/도커 2022.05.17

Docker 정리(2)

기본적인 도커 명령어 알아보기 도커 이미지를 실행시킬 때 docker run 이미지 이름 ls (ex: docker run hello-world ls)를 작성한다. docker -> 도커 클라이언트 언급 run -> 컨테이너 생성 및 실행 이미지 이름 -> 이 컨테이너를 위한 이미지 ls -> 이미지의 기본 시작 명령어 대신 실행할 명령어(ls는 파일 목록을 출력) 작동 순서 1. 도커 클라이언트에 명령어 입력 후 도커 서버로 보낸다. 2. 도커 서버에서 컨테이너를 위한 이미지가 캐쉬에 저장되어 있는지 확인한다. 3. 없다면 도커 허브에서 다운 받아온다 있다면 그 이미 가지고 있는 이미지로 컨테이너 생성한다. 실행 중인 컨테이너 나열 CONTAINER ID : 컨테이너의 고유한 아이디 해쉬값이다. 실제로..

컨테이너/도커 2022.05.15

Docker 정리(1)

도커를 사용하는 이유 java, mysql, c# 등 환경 세팅 및 버전을 세팅한 것을 도커 이미지에 저장한다. 이 이미지를 가져와 다른 사람이 사용하면 나와 같은 환경 세팅 및 버전을 사용할 수가 있다. 도커란? 컨테이너 기반의 오픈소스 가상화 플랫폼 이다. 도커 위에서 동작하는 것이 컨테이너이고, 컨테이너 안에서 동작하는 각각의 애플리케이션들은 리눅스 운영체제에서 동작한다. 컨테이너란? 컨테이너 안에 다양한 프로그램, 실행환경을 컨테이너로 추상화하고 동일한 인터페이스를 제공하여 프로그램의 배포 및 관리를 단순화해준다. AWS, Azure, Google cloud 등 어디에서든 실행 가능하게 해 준다. 컨테이너는 소프트웨어를 환경으로부터 격리시키고 개발과 스테이징의 차이에도 불구하고 균일하게 작동하도록..

컨테이너/도커 2022.05.14