AI Agent를 Local에서 실행한 기록을 정리합니다.
1. Google 계정 생성 및 GCP 프로젝트 생성
2. Google Cloud CLI 설치
2-1. tar.gz 설치
2-2. 압축 해제 후, 명령어로 설치
./google-cloud-sdk/install.sh
2-3. gcloud cli 설정(aws configure와 유사한 작업)
./google-cloud-sdk/bin/gcloud init
- 인증서 오류 나면 proxy N 처리하고, 계속 진행하면 됨
- Google 로그인 요청되면 cli에서 사용할 계정 로그인 해야함
- Google 프로젝트 목록에서, cli에서 사용할 프로젝트 선택해야함
2-4. 정상 인식 여부
gcloud auth list
gcloud config list
gcloud info
참고 : https://cloud.google.com/sdk/docs/install-sdk?hl=ko
3. Terraform CLI 설치(homebrew)
brew tap hashicorp/tap
brew install hashicorp/tap/terraform
terraform -help
4. Poetry(패키지 관리자) 설치
pipx install poetry
poetry --version
5. 로컬 개발 환경 설정
# 0. Python 버전 설정(3.10 버전)
## pyenv 설치 (버전별 python 설치 및 스위칭 가능, xcode 설치 필요)
brew install pyenv
pyenv --version
## 특정 버전 설치
pyenv install 3.12.9
## 설치된 버전 목록 확인
pyenv versions
## 로컬 Python 버전 설정 (이 설정은 .python-version 파일에 저장되어 다음 접속 시에도 유지됨)
pyenv local 3.10.16
## 기존 가상환경이 있다면 제거 (poetry는 자동으로 가상화 처리를 해준다.)
poetry env remove python
## Poetry에 Python 3.10.16 지정
poetry env use $(pyenv which python)
# 0. gcloud sdk cli 재설치
curl https://sdk.cloud.google.com | bash
# 1. 프로젝트 클론
git clone [프로젝트 URL]
cd [프로젝트 디렉토리]
# 2. Poetry로 가상환경 설정 및 의존성 설치
poetry install
# 3. GCP 인증 설정
gcloud init # GCP 계정으로 로그인
gcloud auth application-default login # 로컬 개발용 인증
# 4. 환경 변수 설정
cd src
cp ~/.config/gcloud/application_default_credentials.json ./credentials.json
cp ../.env.template .env
Trouble Shooting
- python 3.12 버전 오류(다운그레이드)
- poetry install 오류
package-mode = false는 Poetry의 중요한 설정 중 하나입니다. 이 설정의 의미를 설명해드리겠습니다:
기본 동작 (package-mode = true)
Poetry는 기본적으로 현재 프로젝트를 패키지로 취급
poetry install 실행 시 현재 프로젝트도 설치 대상에 포함
pyproject.toml의 name과 version이 패키지 식별자로 사용됨
package-mode = false 설정 시
현재 프로젝트를 패키지로 취급하지 않음
poetry install 실행 시 의존성 패키지만 설치
현재 프로젝트는 설치 대상에서 제외
단순히 의존성 관리 도구로만 사용
사용하는 경우
프로젝트를 패키지로 배포할 계획이 없을 때
단순히 의존성 관리만 필요할 때
로컬 개발 환경에서만 사용할 때
장점
불필요한 패키지 설치 방지
의존성 관리에만 집중 가능
설치 과정 단순화
실제 사용 예시
Apply to pyproject.to...
Run
# package-mode = false일 때
poetry install # 의존성만 설치
# package-mode = true일 때
poetry install # 의존성 + 현재 프로젝트 설치
이 프로젝트의 경우:
로컬 개발 환경에서 사용
패키지로 배포할 계획이 없음
의존성 관리가 주 목적
'클라우드 & DevOps > 클라우드 서비스 ∕ GCP' 카테고리의 다른 글
| [GCP] 핵심 서비스 정리 (0) | 2025.05.28 |
|---|---|
| [GCP] GenAI 서비스 학습 Log (1) | 2025.05.27 |
| [GCP] 기본 GCP 강의 Log 2부 (0) | 2025.05.26 |
| [GCP] 기본 GCP 강의 Log (1) | 2025.05.26 |
| [GCP] 핵심 서비스 내용 정리 - IAM (0) | 2025.05.22 |





최근댓글