개요Docker 컨테이너를 구성할 때 가장 중요한 명령어 중 하나인 WORKDIR에 대해 자세히 알아보겠습니다. WORKDIR은 Dockerfile에서 컨테이너의 작업 디렉토리를 설정하는 핵심 명령어입니다. WORKDIR이란❓ WORKDIR 명령어는 Dockerfile에서 이어지는 명령어들( RUN, CMD, ENTRYPOINT, COPY, ADD 등 )이 실행될 작업 디렉토리를 설정합니다. 쉽게 말해서 컨테이너 내부에서 cd 명령어를 실행하는 것과 비슷한 효과를 가집니다. WORKDIR을 설정하면 그 이후의 모든 Docker 명령어(RUN, CMD, ENTRYPOINT, COPY, ADD)가 해당 디렉토리를 기준으로 실행됩니다.이는 마치 터미널에서 cd 명령어로 디렉토리를 이동하는 것과 비슷한 효과를..
TIL,일일 회고
자바의 실행 속도에 대한 의문점자바의 성능에 대해 궁금한 점이 있습니다. 자바는 JVM 위에서 동작하기 때문에 네이티브 언어에 비해 실행속도가 느리다고 알고 있습니다. 하지만 JVM은 JIT 컴파일러를 통해 실행 중에 바이트 코드를 네이티브 코드로 컴파일하여 성능을 향상시킨다고 합니다. 어떻게 실행 속도가 느리다는 단점을 극복하고 성능을 향상시키는 지 궁금했습니다. JIT 컴파일러를 통한 성능 최적화자바는 실제로 두 가지 과정을 거칩니다.초기에는 바이트코드를 인터프리터 방식으로 실행하기 때문에 네이티브 언어보다 느립니다.하지만 JIT(Just-In-Time) 컴파일러가 실행 중에자주 실행되는 코드(Hot Spot)를 감지하여해당 부분을 네이티브 코드로 컴파일이후에는 컴파일된 네이티브 코드를 직접 실행따라..
개요코딩 테스트를 준비할 때 입력을 받을 때 Scanner와 BufferedReader를 사용해서 입력을 받습니다. BufferedReader는 Scanner보다 속도가 빠르고 안전하다는 장점이 있지만, 문자열로만 입력을 받기 때문에 정수 사용 시 형변환이 필요하고 반드시 예외처리를 해야 합니다. 이번 글에서는 BufferedReader를 사용할 때 왜 예외처리가 필요한지, 그리고 어떻게 처리해야 하는지 알아보겠습니다. IOException이란 ❓IOException이란 입출력 작업 중 발생할 수 있는 예외를 의미합니다.발생하는 경우 파일을 읽거나 쓸 때네트워크를 통해 데이터를 주고받을 때키보드 입력을 받을 때BufferedReader에서 IOException가 필요한 이유 ❓ BufferedReade..
개요Docker를 사용하다 보면 여러 컨테이너를 한꺼번에 중지하거나 삭제해야 하는 상황이 자주 발생합니다. 일반적으로 각 컨테이너의 ID를 확인하고 stop과 rm 명령어로 하나씩 처리하게 되는데, 실행 중인 컨테이너가 많을 경우 이 작업은 매우 번거롭고 시간이 많이 소요됩니다. 이러한 불편함을 해결해주는 편리한 명령어가 바로 'docker stop $(docker ps -q)'입니다. 이 명령어 하나로 실행 중인 모든 컨테이너를 한 번에 중지할 수 있습니다. 컨테이너 한번에 중지 : $(docker ps -q)란 ❓docker stop $(docker ps -q) 실행 중인 모든 컨테이너의 ID를 가져오는 명령어입니다. 이 명령어가 어떻게 동작하는지 하나씩 살펴보겠습니다. docker ps 실행 중..