도커 구성요소 1. Client 2. Docker Host 3. Registry 클라이언트가 레지스트리에 있는 이미지를 도커 호스트로가지고 와서 컨테이너를 실행하여 도커 데몬이 이를 관리한다. 이미지와 컨테이너 이미지와 컨테이너는 도커에서 사용하는 가장 기본적인 단위. 이미지와 컨테이너는 1:N 관계이다. 이미지가 클래스라면 컨테이너는 인스턴스. 이미지: 컨테이너를 생성할 때 필요한 요소. 여러개의 계층으로 된 바이너리 파일로 구성되어있다. 컨테이너: 호스트와 다른 컨테이너로부터 격리된 시스템 자원과 네트워크를 사용하는 프로세스. 이미지는 읽기 전용으로 사용한다. 변경사항은 컨테이너 계층에 저장한다. Dockerfile을 빌드하면 Docker Image가 되고 이미지를 실행하면 Docker Contain..
Optional chaining optional chaining 연산자 (?.) 는 체인의 각 참조가 유효한지 명시적으로 검증하지 않고, 연결된 객체 체인 내에 깊숙이 위치한 속성 값을 읽을 수 있다. ?. 연산자는 . 체이닝 연산자와 유사하게 작동하지만, 만약 참조가 nullish (en-US) (null 또는 undefined)이라면, 에러가 발생하는 것 대신에 표현식의 리턴 값은 undefined로 단락된다. 함수 호출에서 사용될 때, 만약 주어진 함수가 존재하지 않는다면, undefined를 리턴한다. 따라서 참조가 누락될 가능성이 있는 경우 연결된 속성으로 접근할 때 더 짧고 간단한 표현식이 생성된다. 어떤 속성이 필요한지에 대한 보증이 확실하지 않는 경우 객체의 내용을 탐색하는 동안 도움이 될..
중복을 허용하지 않고 순서가 없음. key와 value의 세트로 되어있다. {Key : Value, ...} 선언: sample_dict = {'일' : 'one', '이' : 'two', '삼' : 'three'} 접근: sample_dict['이'] # 'two' 키만 가져오기 sample_dict.keys() # dict_keys(['일', '이', '삼']) list(sample_dict.keys()) # ['일', '이', '삼'] 값만 가져오기 sample_dict.values() # dict_values(['one', 'two', 'three']) list(sample_dict.values()) # ['one', 'two', 'three'] 키, 값을 모두 가져오기 sample_dict.it..
List: 여러 요소를 한데 묶는 목적. [] 사용. 리스트 내의 리스트 가능 - 선언: sample_list = [1, 2, 3.14, '리스트', ['샘플', 15], 5, 5, 5] - append(): 리스트에 요소 추가하기 sample_list.append('추가하기') -> [1, 2, 3.14, '리스트', ['샘플', 15], 5, 5, 5, '추가하기'] - pop(): 특정위치의 요소를 빼기 sample_list.pop(2) -> [1, 2, 3.14, '리스트', ['샘플', 15], 5, 5, 5, '추가하기'] - remove(): 특정값의 요소를 빼기 sample_list.remove('추가하기') -> [1, 2, '리스트', ['샘플', 15], 5, 5, 5, '추가하기']..
option + command + esc
맥 os를 Monterey로 올린 후 터미널에서 git 명령어를 쳤더니 에러가 발생했음 xcrun: error: invalid active developer path (/Library/Developer/CommandLineTools), missing xcrun at: /Library/Developer/CommandLineTools/usr/bin/xcrun os 올리면서 명령어실행하는 프로그램이 삭제되었던 것 같음 해결방법: xcode-select --install