1. 가상환경 패키지 저장
1) 가상환경 실행
source [Virtual Environment]/bin/activate
2) requierments.txt 파일 생성
pip3 freeze >> requirements.txt
2. EC2 인스턴스에 git 설치
sudo yum install git
3. git clone
mkdir ~/[디렉터리 명]
- 프로젝트를 clone할 디렉터리 생성
cd ~/[디렉터리 주소] && git clone [레파지토리 명]
4. 가상환경 내 패키지 설치
source [가상환경 명]/bin/activate
- 가상환경 활성
pip3.8 install -r requirements.txt
- 패키지 리스트를 통해 패키지 설치
5-1. 패키지 관련 버전 이슈 해결
- django4.0.5를 사용하는데 버전이 맞지 않는 문제 발생
- amazon Linux2에서는 파이썬 3.6이 설치되어 있음
(1) Extras 라이브러리에서 패키지 설치 확인
/usr/bin/amazon-linux-extras
# 설치가 안되어있으면 아래 명령어를 통해 설치
# sudo yum install -y amazon-linux-extras
(2) 설치 가능한 python 버전 확인 및 활성화
amazon-linux-extras | grep python # 설치 가능한 버전 확인
sudo amazon-linux-extras enable python3.x # 설치
(3) yum을 이용해 설치
sudo yum install python3.x
5-2. 패키지 관련 버전 이슈 해결
앞의 "pip freeze >> requirements.txt"로 받은 패키지 목록을 이용해 EC2에 패키지를 설치하려고 하니
"ERROR: Could not install packages due to an OSError: [Errno 2] No such file or directory: '/AppleInternal/BuildRoot/Library/Caches/com.apple.xbs/Sources/python3/python3-110/six-1.15.0-py2.py3-none-any.whl'"
와 같은 오류가 발생했다.
해당 이슈는 direct URL references로 설치된 배포판을 직접 포함하도록 pip freeze가 변경되어서라고 한다.
자세한 내용은 아래를 참고하자
https://github.com/pypa/pip/issues/8176
아래 명령어로 패키지 목록을 만든 다음 EC2에 설치 가능하다
pip list --format=freeze > requirements.txt
6. 프로젝트 실행
python3.8 manage.py runserver
'Web Programming > django' 카테고리의 다른 글
Gunicorn (0) | 2022.07.05 |
---|---|
AWS 서버 배포 - (1) EC2 인스턴스 생성 (0) | 2022.06.09 |
[Django] Model기반 form 형식 지정 (0) | 2020.06.22 |
[Django] 페이지네이션 (0) | 2020.06.22 |
[Django] 템플릿 확장 (0) | 2020.06.22 |
댓글