본문 바로가기

전체 글89

7. 매니페스트와 파드 매니페스트란? 쿠버네티스 오브젝트를 생성하기 위한 메타정보를 YML / JSON 으로 만든 파일이다. 적용 kubectl apply -f [manifest_file] 제거 kubectl delete -f YAML [manifest_file] Pod 설정 시, 옵션 항목 설명 apiVersion 버전을 설정한다. kind 쿠버네티스 리소스 유형을 정의한다. metadata 메타데이터로 name 은 필수항목이며, unique 해야 한다. spec Pod 의 스펙을 기술하며, 아래의 표에 있는 옵션을 사용할 수 있다. Pod 스펙 정의 항목 설명 containers 각 컨테이너의 스펙을 기술한다. initContainers 위의 containers 와 동일하나, 초기화 전용 컨테이너의 스펙을 기술한다. vol.. 2021. 8. 21.
6. 쿠버네티스 첫걸음 1. kubectl run 커맨드 아래의 명령어는 무엇을 뜻하는가? kubectl run hello-world --image=hello-world -it --restart=Never 명령어 설명 kubectl 쿠버네티스에 명령을 전달한다. run 컨테이너 실행을 명령한다. hello-world 쿠버네티스 오브젝트(Pod, Controller, Service 등의 인스턴스) 의 이름을 명시한다. --image=hello-world 컨테이너의 이미지를 명시한다. -it 도커의 -it 와 같다. --restart=Never 옵션에 따라 파드의 기동방법이 달라진다. (여기서의 옵션은 Never로써, 직접 파드를 기동한다.) 2. 컨트롤러에 의한 파드실행 (디플로이먼트 컨트롤러) 디플로이먼트 생성 kubectl .. 2021. 8. 21.
4. 컨테이너와 네트워크 네트워크 커맨드 참고 : https://docs.docker.com/engine/reference/commandline/network/ Command Description docker network ls 네트워크의 리스트를 출력한다. docker network inspect 하나 이상의 네트워크에 대해서 상세한 네트워크 정보를 출력한다. docker network create 네트워크를 생성한다. docker network rm 네트워크를 제거한다. docker network connect 네트워크에 컨테이너를 연결한다. docker network disconnect 네트워크에 연결되어있는 컨테이너에 대해서 연결을 해제한다. !! 같은 네트워크에 있는 컨테이너는 컨테이너의 이름으로 서로 통신할 수 있다... 2021. 8. 16.
3. 컨테이너 개발 빌드 실행 순서 디렉토리를 준비한 뒤, 이미지에 포함시킬 파일들을 모은다. Dockerfile 을 작성한다. 컨테이너에서 실행할 코드에 대해 유닛테스트를 실행한다. 이미지를 빌드한다. (docker build) 컨테이너를 실행하고 동작을 확인한다. Dockerfile 옵션 Command Description FROM FROM : 가동할 컨테이너의 베이스 이미지를 지정한다. RUN 베이스이미지에서 실행할 커맨드를 입력한다. ※ 커밋되는 이미지 파일은, 해당 RUN 커맨드가 수행된 뒤 이를 포함하여 커밋된다. CMD 컨테이너가 기동 시 실행할 커맨드를 입력한다. (덮어씌워진다.) ENTRYPOINT 컨테이너가 기동 시 실행할 커맨드를 입력한다. (덮어씌워지지 않는다.) EXPOSE 호스트와 연결될 포트번호를.. 2021. 8. 15.