전체 글(216)
-
Github Actions - Github Marketplace 및 사전 준비
Github Marketplace깃허브 액션 마켓 플레이스는 깃허브에서 바로 가져다 쓸 수 있는 확장 앱, 도구 스토리지 이다.여기서 누군가 만들어둔 action을 사용할 수 도 직접 만든 커스텀 액션을 업로드 할 수 도 있다. https://github.com/marketplace?type=actions GitHub · Build and ship software on a single, collaborative platformJoin the world's most widely adopted, AI-powered developer platform where millions of developers, businesses, and the largest open source community build soft..
2025.09.26 -
GitHub Actions - 컴포넌트
깃허브 액션은 컴포넌트 라는 것으로 이루어져 있으면서 이 컴포넌트들이 서로 조합되어 깃허브 액션의 기능을 완성한다. 깃허브 액션의 컴포넌트는 자동화를 어떻게 기술하고 실행하는 가를 구정하는 구성요소로 Workflow, Event(Trigger), Job, Runner, Step, Action, Secrets/Variables/Environments, Artifacts/Cache, Matrix/Concurrency/Permissions/OIDC, Service/Container로 구성되어 있다. 1. Workflow워크플로우는 자동 업무 지시서이다.이는 언제(조건), 어디서(실행환경), 무엇을(작업들) 어떤 순서/규칙으로 실행할지를 적어두는 체크리스트 문서라고 보면 된다.이 문서를 저장소 안의 .githu..
2025.09.26 -
FastAPI - env파일 사용
프로그램을 만들다보면 설정과 관련된 내용들은 직접 하드코딩 하지 않고 .env파일이나 .properties와 같은 설정 파일에 넣어두고 프로그램에서는 읽어다가 상수처럼 사용하는 방식을 많이 사용한다.우리는 파이썬에서 사용되는 .env파일을 만들어서 FastAPI에서 사용하는 방법을 확인해보자(FastAPI만 아니고 여기저기서 사용되는 방식일 수 도 있다.) 1. .env파일 생성먼저 설정값의 저장파일이 될 .env파일을 생성해주자.보통 위치는 가장 상위에 생성한다. 그리고 내부에는 이런식으로 상수로 사용할 설정 정보들을 넣게 된다. 2. .env의 사용설정.env파일을 생성했으면 이 값을 프로그램의 내부에서 사용할 수 있어야 한다.이를 파이썬에서는 하나의 파일을 생성해서 사용할 수 있도록 클래스를 생성해..
2025.09.23 -
Fast API - SQL 데이터베이스
Fast API에서 DB 를 사용하기 위해서 SQLModel을 사용해보도록 하자.먼저 SQL Model의 경우는 SQL Alchemy와 Pydantic을 기반으로 구축되어 있는 모듈이다. 먼저 SQL Model을 설치해보자.그러고 이제 모델을 생성하기 위해 필요한 모듈들을 추가해주고Class로 모델을 생성해주자. 1. Model 생성이때 SQLModel을 상속하면서 table 속성을 True로 설정해주자.그리고 이안에 id, name, age, full_name을 멤버로 만들어주자. 이는 Pydantic 모델을 생성하는 방법과 매우 유사하게 사용된다.(내부적으로는 pydantic모델이긴하다고 함)그 상세를 보면 몇가지 차이점이 있는데 먼저 prymary_key로 설정되어 있는 부분은 해당 멤버가 DB에서..
2025.09.15 -
FastAPI - async with 구문
일반적인 with구문은 파일 열기/닫기 처럼 동기적인 작업을 자동으로 처리해주는 것 처럼, async with는 비동기적인 작업을 시작하고 끝내는 과정을 안전하게 관리해준다. 비동기 프로그래밍에서는 리소스 관리를 위한 특별한 문법으로 일반적인 with 구분이 파일을 핸들링 하기 위해서 혹은 데이터베이스 커넥션을 위해서 동기적인 리소스를 안전하게 열고 닫는 역할을 하듯이 async with는 await이 필요한 비동기적인 리소스를 안전하게 관리해준다. async with 구분은 내부적으로 __aenther__와 __aexit__을 호출한다 __aenther____aenther__는 async with 블록이 시작될때 호출된다.리소스를 설정하고 필요하다면 await을 사용해서 비동기적으로 준비한다 __aex..
2025.09.10 -
Fast API - Middleware
1. Middleware미들웨어는 FastAPI 애플리케이션의 모든 요청과 응답 사이에서 실행되는 함수로 웹 서버에 들어오는 요청을 가로채서 처리를 한 후에 다음 단계로 전달하거나 응답을 수정하는 역할을 한다. 미들웨어는 여러 API 엔드포인트에서 공통적으로 적용해야하는 로직을 한 곳 에서 처리가 가는하다는 점에서 유용하다.미들웨어가 없다면 모든 라우트 함수에 동일한 코드를 복,붙해서 써야하기에 코드가 중복되고 관리가 어려워진다. 보통 미들웨어에서는 인증 및 권한 부여(요청 헤더 토큰 검사를 통한 로그인 여부 확인, 접근 권한 확인), 로깅(모든 요청에 대한 IP, 요청시간, 응답 상태 코드 등을 기록), CORS(다른 도메인에서 오는 요청을 허용하거나 차단하는 규칙을 설정), 압축(클라이언트에게 보내는..
2025.09.10