Docker & kubernetes(5)
-
05. Docker compose
Docker compose여러 개의 컨테니어 옵션과 환경을 정의한 파일(YAML)을 읽어 컨테이너를 순차적으로 생성하는 방식으로 동작하는 시스템docker compose를 쓰기 위해서는 반드시 컨테니어 설정이 정의된 YAML 파일을 작성해야함리눅스 같은 경우 따로 docker compose 설치를 해야함파일을 github에서 다운받고, 받은 파일을 "/usr/local/bin/"에 "docker-compose"라는 이름으로 저장chmod +x /usr/local/bin/docker-compose 이후, docker-composer -v로 설치 잘 되었는지 확인 가능일반적으로 docker compose는 현재 디럭터리의 이름으로 된 프로젝트를 제어"-p" 옵션으로 제어할 프로젝트를 지정할 수 있음docer..
2024.02.12 -
04. Dockerfile
Dockerfile이란 완성된 이미지를 생성하기 위해 컨테이너에 설치해야 하는 패키지, 추가해야 하는 소스코드, 실행해야 하는 명령와와 셀 스크립트 등을 기록해 두는 하나의 파일이다. 빌드 명령어를 통해 Dockerfile을 읽어 이미지를 생성할 수 있어 Docker hub에 이미지 대신 Dockerfile를 배포할 수 도 있다. 왜 Dockerfile을 사용해야는 가? 애플리케이션에 필요한 패키지 설치 등을 명확히 할 수 있고 이미지 생성을 자동화할 수 있으며 쉽게 배포할 수 있기 때문이다. Dockerfile 문법 FROM: 생성할 이미지의 베이스가 될 이미지 RUN: 이미지를 만들기 위해 컨테이너 내부에서 실행하는 명령어 ADD: 이미지에 추가할 파일 ADD vs COPY: COPY는 로컬 디렉터리..
2024.01.17 -
03. 유용한 Docker 명령어 목록
Docker image list docker image ls // or docker images Docker container 생성 docker run -it {docker image 이름} Docker container list docker container ls // or docker ps Docker container 삭제 // 삭제 docker rm {container ID} //강제 삭제 docker rm -f {container ID} // 모든 컨테이너 삭제 docker rm ${docker ps -a -q} // -a: 컨테니어에 상관없이 모든 컨테이너를 // -q: 컨테이너의 ID만 출력 // 컨테이너 stop docker stop {container name} Docker contain..
2024.01.09 -
02장. 이미지와 컨테이너
이미지 컨테이너를 생성할 때 필요한 요소 (가상 머신을 생성할 때 사용하는 iso 파일과 유사) 여러 개의 계층으로 된 바이너리 파일 컨테이너를 생성하고 실행할 때 읽기 전용으로 사용됨 도커 명령어로 내려받을 수 있으므로 별도의 설치할 필요성 없음 컨테이너 이미지를 통해 생성되며 격리된 시스템 자원 및 네트워크를 사용할 수 있는 독립된 공간을 생성함. 컨테이너는 도커 이미지의 목적에 맞도록 사용되는 것이 일반적 이미지를 읽기 전용으로 사용하지만, 이미지가 변경되면 컨테이너 계층에도 영향을 미침. 하지만 컨테이너 계층에서 무엇을 하든 원래 이미지에는 영향이 가질 않음
2024.01.06 -
1장. Docker 와 가상환경
가상환경 Docker 구성 하이퍼 바이저를 이용해 여러개의 운영체제를 하나의 호스트에서 생성하여 사용 리눅스 자체 기능을 사용하에 프로세스 단위의 격리 환경 생성 성능 하이퍼 바이저를 반드시 거치기 때문에 일반 호스트에 비해 성능 손실 발생 프로세스 단위의 격리 환경으로 성능 손실이 거의 없음 이미지 용량 운영체제를 구동하기 위한 라이브러리, 커널 등을 포함하므로 배포해야하므로 이미지 용량이 큼 애플리케이션을 구동하는데 필요한 라이브러리 및 실행 파일만 존재하기 때문에 이미지 용량이 작음 이미지 생성 생성 시간이 오래걸림 가상 환경보다 빠름 Docker의 장점 애플리케이션 개발과 배포가 편리 로컬 OS(호스트 OS)와 격리된 공간에서 컨테이너가 구동되므로, 컨테이너 자체에 특별한 권한을 주지 않는 이상 ..
2024.01.06