20220214(pyenv, pyenv-virtualenv)

오늘 한 일

  • 회사 구조 및 근무환경 파악 (완료)
  • 조직구조와 각 부서의 역할과 주요 업무 (완료)
  • 기본 계정 및 환경 설정 (진행 중)

이 과정에서 배운점

  • 8퍼센트의 수익 창출 원리를 파악
  • pyenv는 파이썬 버전을 관리하는 툴 -> 하나의 컴퓨터에 다양한 파이썬 버전을 설치하고 관리
  • pyenv-virtualenv → 파이썬 환경을 격리하는 툴

왜 가상환경을 쓰는건가?

파이썬 프로젝트를 위한 격리된 환경을 만들기 위해서

왜 direnv를 사용하는지? (진행 중)

  • pyenv-virtualenv (사용 해봄)
    • pyenv activate < 이름 >
      pyenv deactivate
      → 매번 파이썬 환경을 직접 타이핑해 접속하고 나가야하는 불편함
  • autoenv (사용해보지 않음)
    • 해당 디렉터리에 들어갈 때 자동적으로 .env를 로드,
      하지만 해당 디렉터리를 빠져나갈 때 자동으로 unload 하지 않는다
  • direnv (사용 해봄)
    • 사용자가 현재 위치한 디렉터리의 .envrc파일을 추가로 읽어들여
      해당 디렉터리에서만 필요한 설정을 로드
    • 해당 디렉터리를 빠져나갈 때 자동으로 unload
    • 해당 디렉터리에 들어갈 때 자동적으로 .env를 로드

환경 설정 중 생긴 오류

발생한 오류

psycopg2 에러 (사진을 캡쳐하지 못했습니다)

psycopg2 →python과 PostgreSQL을 연결하는 모듈

오류가 생긴 이유

내 로컬에 설치된 postgresql 11버전과 psycopg2가 정상적으로 연동되지 않음

해결 방법

psycopg2 와 연동되는 postgresql를 설치 후 requirements/dev.txt에 기재되어 있는 패키지를 설치

설치된 postgresql를 연결 끊고 postgresql@11를 연결

	brew install postgresql ## postgresql 설치 
	pip install -r requirements/dev.txt ## 패키지 설치
	brew unlink postgresql ##  연결 끊기
	echo ‘export PATH=“/usr/local/opt/postgresql@11/bin:$PATH”’ >> ~/.zshrc\n
	brew link postgresql@11 ##  postgresql@11를 연결 

왜 꼭 postgresql@11를 써야하는가?

상위 버전은 하위 버전의 파일을 읽을 수 있지만, 하위 버전은 상위 버전의 파일을 못 읽을 수도 있음

내일 할 일

환경 설정 마무리 및 로컬 데이터베이스 스키마 생성 및 데이터백업!

8Percent/infra에 수정해서 PR

브란치 작명 방법 배우기

좋은 웹페이지 즐겨찾기