본문 바로가기

분류 전체보기

(219)
[Git] Git에서 이미 커밋된 파일 무시하기 Git 환경에서 이미 커밋된 파일들을 무시하는 방법에 대해 알아보겠습니다. .gitignore 파일의 역할 .gitignore 파일은 Git에 의해 추적되지 않을 파일들을 지정합니다. 이 파일에는 Git이 추적하지 않을 파일 패턴들이 포함되어 있습니다. 하지만, 이미 추적 중인 파일들에 대해서는 영향을 미치지 않습니다. 즉, .gitignore에 파일을 추가한다고 해서 이미 커밋된 파일이 자동으로 무시되지는 않습니다. 이미 커밋된 파일 추적 취소 방법 단일 파일 추적 취소 특정 파일이 이미 커밋된 상태에서 이후로는 무시하고자 할 때, git rm --cached [파일명] 명령어를 사용해 파일 추적을 취소할 수 있습니다. 이 명령은 파일을 시스템에서 삭제하지 않고 Git 추적에서만 제외합니다. .giti..
[Python] 파이썬 PEP 701: F-String 개선(Python 3.12버전 코드 예시) 파이썬에서 F-스트링(F-strings)은 코드의 가독성을 높이고 문자열 포매팅을 간편하게 만들어 주는 강력한 기능입니다. PEP 701은 이 F-스트링 기능의 개선에 관한 제안서입니다. F-스트링의 개선점 성능 향상: PEP 701은 F-스트링의 성능을 향상시키는 방법을 제안합니다. 이는 특히 대규모 데이터를 다룰 때 유용합니다. 추가 기능: 새로운 포매팅 옵션과 기능을 도입하여 더 다양한 사용 사례를 지원합니다. 예시 코드 # 기본 F-스트링 사용 예 name = "홍길동" age = 30 print(f"이름: {name}, 나이: {age}") # PEP 701에 따른 개선된 F-스트링 사용 예 # 예를 들어, 인라인 계산이나 더 향상된 형식 지정 기능을 포함할 수 있음 print(f"{name=}..
[Python] 파이썬 PEP 695: 타입 파라미터(TypeVar) 문법과 타입 문(예시 코드) 파이썬의 타입 시스템은 지속적으로 발전하고 있으며, PEP 695는 이러한 발전의 일환으로 제안되었습니다. 이 PEP는 특히 타입 파라미터 문법과 타입 문에 초점을 맞추고 있습니다. 주요 내용 타입 파라미터 문법: 이 문법은 제네릭 타입을 더 명확하고 간결하게 표현할 수 있게 해줍니다. 이는 타입 힌트의 가독성을 향상시키고, 복잡한 타입 구조를 더 쉽게 이해할 수 있게 합니다. 타입 문: 타입 문은 타입 힌트를 코드 내에서 더 명시적으로 표현할 수 있는 방법을 제공합니다. 이를 통해 개발자는 코드의 의도를 더 명확하게 전달할 수 있습니다. 예시 코드 # 타입 파라미터 문법 예시 T = TypeVar('T') class Stack(Generic[T]): def push(self, item: T) -> No..
[Docker] 오류 해결: 'The input device is not a TTY' 문제 원인과 해결 방법 Docker를 사용할 때 "The input device is not a TTY"라는 오류 메시지가 나타나는 경우가 있습니다. 이 오류는 주로 Docker 컨테이너와 상호작용할 때 발생하며, 특히 CI/CD 파이프라인이나 스크립트에서 Docker 명령을 실행할 때 자주 발생합니다. 오류의 원인 TTY(Teletype)는 전통적으로 텍스트를 입력하고 출력하는 장치를 가리키는 용어입니다. 현대 컴퓨팅에서는 터미널 또는 명령줄 인터페이스를 의미합니다. Docker에서 이 오류 메시지는 Docker 명령이 TTY 또는 인터랙티브 쉘에 연결되어 있지 않을 때 발생합니다. 스크립트 실행 중: 배치 스크립트 또는 CI/CD 파이프라인에서 docker run 또는 docker exec 명령을 실행할 때 이 오류가 발생..
[Docker] Docker 이미지 정리하기: 불필요한 이미지 제거하는 완벽 가이드 Docker 이미지 관리는 시스템의 성능과 공간 효율성을 유지하기 위해 중요합니다. 오래되거나 사용하지 않는 이미지를 제거하는 것은 디스크 공간을 확보하고, 관리를 용이하게 하며, 보안을 강화할 수 있습니다. 이 글에서는 Docker 이미지를 효과적으로 정리하는 방법에 대해 설명합니다. Docker 이미지 제거의 기본 Docker에서 이미지를 제거하는 가장 기본적인 명령어는 docker image rm 입니다. 이 명령어는 하나 이상의 이미지를 제거하는 데 사용됩니다. docker image rm [OPTIONS] IMAGE [IMAGE...] 옵션으로는 -f 또는 --force를 사용하여 이미지의 강제 삭제를 할 수 있고, --no-prune 옵션을 사용하여 태그되지 않은 부모 이미지를 삭제하지 않도록..
[Python] 판다스(Pandas)에서 DataFrame 행 반복 처리하기 - iterrows 판다스(Pandas)는 파이썬에서 데이터 분석을 위해 널리 사용되는 라이브러리입니다. 이 글에서는 판다스의 DataFrame에서 행을 반복(iterate) 처리하는 방법에 대해 알아보겠습니다. DataFrame 행 반복의 기본: iterrows() 판다스에서 DataFrame의 각 행을 반복하는 기본적인 방법은 iterrows() 함수를 사용하는 것입니다. 이 함수는 DataFrame의 행을 (인덱스, 시리즈) 쌍으로 반복합니다. 예시 코드 import pandas as pd # 예제 DataFrame 생성 df = pd.DataFrame({'A': [1, 2, 3], 'B': [4, 5, 6]}) # iterrows를 사용하여 행 반복 for index, row in df.iterrows(): prin..
[Docker] 도커(Docker)에서 한 번에 모든 이미지 삭제하는 방법 도커(Docker)를 사용하면서 로컬에 쌓인 이미지들을 일괄적으로 삭제할 필요가 있을 때가 있습니다. 특히, 디스크 공간을 확보하거나 정리를 하기 위한 작업을 필요로 합니다. 이 글에서는 도커에서 모든 로컬 이미지를 삭제하는 방법에 대해 알아보겠습니다. 도커 이미지 삭제 기본 도커에서 이미지를 삭제하는 기본 명령어는 docker rmi입니다. 이 명령어는 하나 또는 여러 개의 이미지를 호스트 노드에서 삭제합니다. 이미지가 여러 태그를 가지고 있다면, 해당 태그만 제거하고, 태그가 이미지에 대한 유일한 참조일 경우 이미지와 태그 모두 삭제됩니다. 예시: 특정 이미지 삭제 docker rmi 모든 이미지 일괄 삭제 모든 로컬 도커 이미지를 삭제하려면, 아래의 명령어를 사용할 수 있습니다. 이 명령어는 로컬에..
[k8s] Kubernetes 명령어 비교: kubectl apply vs kubectl create Kubernetes에서 자원을 관리하고 배포하는 데는 다양한 명령어가 사용됩니다. 이 글에서는 Kubernetes의 핵심 명령어인 kubectl apply와 kubectl create의 차이점을 살펴보고, 언제 어느 명령어를 사용해야 하는지를 알아보겠습니다. kubectl apply의 특징 및 사용법 kubectl apply 명령어는 Kubernetes 리소스의 구성을 선언적으로 관리하는 데 사용됩니다. 이 명령어는 리소스의 현재 상태를 JSON 또는 YAML 파일 형식으로 지정된 원하는 상태와 비교하여, 필요한 변경사항을 적용합니다. 주요 특징 변경사항만 적용: 기존 리소스의 설정을 수정하거나 추가할 때 유용합니다. 선언적 업데이트: 리소스의 전체 정의를 제공하고 Kubernetes가 필요한 변경을 파..
[Docker] 볼륨 추가 시 필요 없는 특정 폴더 쉽게 제외하기 (.dockerignore) 도커(Docker)는 애플리케이션을 컨테이너화하여 개발 및 배포를 간편하게 해주는 툴입니다. 때때로, 우리는 특정 볼륨을 도커 컨테이너에 추가하고 싶지만 그 안의 일부 서브 폴더는 제외하고 싶을 수 있습니다. 이 글에서는 도커에 볼륨을 추가하면서 특정 서브 폴더를 제외하는 방법에 대해 알아보겠습니다. 1. 볼륨 추가의 기본 먼저, 도커에 볼륨을 추가하는 기본적인 방법부터 이해해야 합니다. 볼륨은 컨테이너의 데이터를 보존하고, 컨테이너 사이에 데이터를 공유하는 데 사용됩니다. 도커 볼륨을 추가하는 가장 간단한 방법은 docker run 명령어에 -v 또는 --volume 옵션을 사용하는 것입니다. 예를 들어, 로컬의 /mydata 폴더를 컨테이너의 /data 폴더에 마운트하는 경우 아래와 같이 명령을 실행..
[Python] Python 3.10에서 새롭게 도입된 패턴 매칭 기능 (match-case) 파이썬 3.10 버전에서 소개된 중요한 새로운 기능 중 하나는 패턴 매칭입니다. 이 기능은 다양한 데이터 타입과 구조를 더 직관적이고 유연하게 처리할 수 있도록 해줍니다. 패턴 매칭이란? 패턴 매칭은 주어진 데이터 구조를 특정 패턴과 비교하여, 해당 패턴에 부합하는지 여부를 확인하는 프로세스입니다. 이 기능은 많은 함수형 프로그래밍 언어에서 일반적으로 사용되며, 파이썬 3.10에서는 match 문과 case 문을 통해 구현됩니다. 기본 구조 match 대상_변수: case 패턴1: # 패턴1과 일치할 때 실행되는 코드 case 패턴2: # 패턴2와 일치할 때 실행되는 코드 ... 사용 예시 아래 예시는 파이썬 3.10의 패턴 매칭 기능을 보여줍니다: def greet(person): match perso..