도커의 정의 : 컨테이너 기술이다. 컨테이너를 생성하고 관리하기 위한 도구컨테이너란? 표준화된 소프트웨어 유닛이다.여기서 말하는 소프트웨어 유닛이란 코드의 패키지, 코드를 실행하는데 필요한 의존성과 도구등을 모두 포함한 것들을 의미한다.도커가 실행되는 모든 곳에서 만들
vm이란 virtual machine의 약자로 자신이 가진 운영체제 위에 사용하는 가상의 운영체제를 의미한다. 그렇기 때문에 가상의 운영체제 내에서 실제 컴퓨터처럼 도구들, 의존성, 언어 등등을 설치하고 운영할 수 있다.즉, vm을 사용한다면 그안에 소프트웨어 유닛을
이미지란? > 도커에서의 이미지란 템플릿 혹은 컨테이너의 블루프린드를 의미한다. 즉, 이미지는 실제코드와 그 코드를 실행하는데 필요한 도구를 포함한다. 블루프린트란 청사진으로 아키텍처를 문서화한 기술도면의 복사본을 의미한다. 이미지 생성방법 > 이미지를 생성하고 가져
도커파일 명령어 > 도커파일(Dockerfile)을 구성하려면 도커파일 명령어에 따라 해당 파일을 구성해야 한다. 우선, 실행될 코드의 루트폴더로 이동해 Dockerfile(도커에 의해 식별되는 특별한 이름)을 생성한다. 아래는 도커파일에 대한 대표 명령어들이다. FR
컨테이너가 생성되는 과정 > 이미지를 이용해 컨테이너를 생성할 때, copy명령어에 의해 지정된 폴더내의 모든것을 지정된 폴더에 복사하도록 합니다. 이때, 소스코드의 경우 복사한 시점에 소스코드의 스냅샷을 만듭니다. 즉, 소스코드를 변경하고 해당 소스코드를 포함하는 컨
도커 대표 명령어 > --help : 도커의 명령어들을 나열해줌 ps : 실행 중인 모든 컨테이너를 불러옴(옵션 -a : 모든 컨테이너) images : 모든 이미지를 불러옴 run : 이미지를 기반으로 새로운 컨테이너 생성 start : 중지된 컨테이너를 다시 실행
연결과 분리 > 도커에서는 컨테이너를 생성할 때는 2가지 모드를 지원한다. 연결모드란? 실행 중인 컨테이너의 출력결과를 수신하는 모드(입력도 포함) 분리모드란 실행 중인 컨테이너의 출력결과를 수신하지 않는 모드(입력포함) start와 run의 차이점은? > 컨테이너를
이미지 공유하기 > 이미지를 공유하는 방법은 2가지 방법이 있다. 도커허브를 이용하는 방법(프라이빗은 유료) 프라이빗 레포지토리를 이용하는 방법(하버 등등) 위 2가지 방식 모두 push와 pull 도커 명령어를 사용하여 이미지를 공유하게 된다. push > push
도커에서 데이터는 크게 3가지로 분류할 수 있다.1\. 임시 에플리케이션 데이터 : 우리가 만든 코드가 아님(애플리케이션이 실행되는 동안 생성된 데이터를 의미) => 이 데이터는 컨테이너가 삭제될 경우 데이터가 사라지게 된다.예를들어 인적사항을 입력받는 데이터(이러한
문제상황 > 컨테이너 삭제의 경우에만 자체 파일 시스템이 사라지게 되는 특성 때문에, 코드 수정 이후 코드를 실행을 위한 이미지 리빌딩, 컨테이너 리빌딩의 경우 데이터를 저장할 수 없는 상황이 발생하게 된다. 해결법 = 볼륨 > 볼륨이란 호스트 머신의 폴더이다.(로컬