[Mac][Python]가상환경 생성과 환경변수 설정
상황
프로젝트 패키지 관리차원에서 가상환경을 생성하고자 한다.
이미 패키지를 깔아놨기 때문에 그대로 이용하면서 추가 패키지는 가상환경에만 깔고자 한다.
할 일
1. 가상환경 생성
2. 기존에 깔려있는 패키지 모아서 깔아두기
가상환경 생성 및 현재 깔아둔 패키지 한 번에 다운로드하는 법
I. 가상환경 세팅
원하는 경로에 가상환경 폴더 모아둘 최상위 폴더 생성한다.
mkdir venv
중간에 폴더 지우고 할 때 또 다른 명령어 참고했음
참고 블로그
초보자를 위한 맥 터미널 명령어 정리
맥으로 개발을 하다 보면, 터미널을 사용하게 되는 경우가 많이 있는데요. iOS앱 개발을 할 때 외부 라이브러리를 사용하기 위해 CocoaPods 와 pod을 설치 할 때도 터미널을 통해 설치 하게 됩니다!
lsh424.tistory.com
- 가상환경 생성
cd venv
python3 -m venv crawler_env
II. 가상환경 패키지 준비-기존 패키지 한 번에 설치
1. 현재 깔린 패키지 확인
pip3 list
2. requirements.txt 파일 생성 및 패키지 자동입력
pip3 freeze >requirements.txt
requirements.txt 파일이 생성됨
(touch requirements.txt 라고 해도 됨.
위와의 차이는 python 패키지를 사용하느냐 bash 명령어를 사용하느냐)
pip3 list —format=freeze > requirements.txt
pip3 list하면 현재 깔린 패키지 모두 나타내는데
이게 전부 requirements.txt 에 올라감.
pip3 install -r requirements.txt
필요한 거 다 깔자
※ 꼭 텍스트 파일명이 ‘requirements’는 아니어도 됨
다만 헷갈릴 수 있으니 많이들 사용하는 이름으로 쓰는 것 뿐
참고 블로그
https://sosoeasy.tistory.com/597
pip이용하여 requirements.txt 만들기
1. requirements.txt 현재 가상환경에 설치된 python 패키지를 버전과 함께 작성하여 requirements.txt 파일에 저장한다 2. requiremnets.txt 생성 커맨드 다음 커맨드를 이용하여 자동으로 requirements.txt파일을 생
sosoeasy.tistory.com
*pip3 freeze 와 list 차이
freeze | Output installed packages in requirements format. | 깔린 패키지 형식에 맞게 출력 |
list | List installed packages. | 깔린 패키지 나열 |
참고 글
https://stackoverflow.com/questions/18966564/pip-freeze-vs-pip-list
Pip freeze vs. pip list
Why does pip list generate a more comprehensive list than pip freeze? $ pip list feedparser (5.1.3) pip (1.4.1) setuptools (1.1.5) wsgiref (0.1.2) $ pip freeze feedparser==5.1.3 wsgiref==0.1.2 Pi...
stackoverflow.com
할 일
1. 가상환경 생성
2. 기존에 깔려있는 패키지 모아서 깔아두기
3. 가상환경 쉽게 진입하게 설정하기
- 가상환경 진입
나는 바탕화면의 venv 폴더 안에 가상환경을 만들어놨다.
이 때 가상환경 진입방법은 다음과 같다.
다소 열심히 들어가는 방법
>> 직접 가서 activate 파일 실행
cd [바탕화면까지의 경로]/venv/crawling_env/bin/
혹은
cd [바탕화면까지의 경로]/venv/crawling_env/bin
※ ‘/‘(슬래시)는 경로 끝에 해도 되고 안 해도 된다.
>> source 명령어로 한방에 진행(대신 경로명을 다 써야한다..!)
source [바탕화면까지의 경로]/venv/crawling_env/bin/activate
가장 쉽지만 준비가 좀 필요한 방법
바로, ‘환경변수 설정’을 이용한다
터미널에 다음과 같은 명령어를 입력한다.
vi ~/.bash_profile
혹은
vim .bash_profile
환경변수 설정하러 간다는 뜻이다.
그럼 attention 이라 하면서 환경변수 설정과 관련된 설명이 뜸
E를 눌러 Edit 모드 설정하거나(권장)
엔터키 3번 눌러도 된다.(경험에 의한 결과)
그 뒤,
i를 눌러 Insert 모드로 변경하기
Export PATH라는 행으로 가서
PATH 부분에 PATH 대신 내가 원하는 환경변수와 그 경로 입력하면 된다.
예시.
수정 전 | 수정 후 |
export PATH | export crawler_env = [바탕화면까지의 경로]/venv/crawling_env/bin/activate |
그 뒤 esc 버튼 눌러 비활성화하고
:wq 입력해서 입력을 마치고 나간다고 명령해준다.
터미널에서 env라고 입력하면 환경변수 전체 확인할 수 있다.
내가 설정한 환경변수 있나 확인해주자.
※ 없을 수도 있는데 환경변수 적용하려면 재시동(껐다 키기)해야 한다.
그 뒤 다음과 같이 명령어를 입력하자.
source $crawler_env
그럼 바로 가상환경 활성화된다.
참고 블로그
https://kitty-geno.tistory.com/166
MAC | 맥에서 환경변수 설정 및 확인
▶︎ 터미널 실행 Spotlight(단축키 Command + Space)에서 terminal 검색 후 실행 ▶︎ 명령어 입력 vi ~/.bash_profile 입력 vi ~/.bash_profile 아래와 같은 화면이 나오면 E를 눌러 Edit 모드로 설정 i를 눌러 INSERT 모
kitty-geno.tistory.com
https://cosmosproject.tistory.com/269
Mac : Mac OS에서 환경변수 조회/설정하기 (Checking & Setting environment variable in Mac OS. vim editor. vi editor)
환경변수 조회하기 Mac OS에서 환경변수를 조회하기 위해서는 terminal에서 env라는 글자를 입력하면 됩니다. [Terminal] $ env ... ... ... 위 예시에서 출력된 내용은 ...으로 지웠지만 위처럼 env라는 명령
cosmosproject.tistory.com
—
다른 방법도 있나?
Windows에선 bach 파일 따로 만들어서 키워드 하나로 들어갔는데
Mac에서는 환경변수만 설정해도 금방 진입할 수 있다만
명령어(source)를 입력해야 해서 더 간단한 방법을 찾고 싶다만 지금은 모르겠다.
우선 이렇게 쓰고자 한다.