본문 바로가기

개발공부/스파르타코딩

[ 사전스터디 ] 웹개발 종합반 5주차

AWS 배포

정의. AWS(Amazon Web Services)는 아마존에서 제공하는 안정성있고 확장 가능한 클라우드 컴퓨팅 서비스

 

배포 과정.
1. AWS 가입
   - https://aws.amazon.com/console/
2. IAM에서 Access Key 생성
3. Python 배포 폴더 및 파일 생성
4. Python AWS 패키지 설치
5. AWS 명령어를 통해 배포

Python 배포 폴더 및 파일 생성

배포 파일 및 폴더 준비.
1. deploy 폴더 생성 
   - mkdir deploy
   
2. app.py 복사 및 application.py 변경
   - cp app.py deploy/application.py
   - [app = Flask(__name__)] -> [application = app = Flask(__name__)]
   - [app.run('0.0.0.0', port=5000, debug=True)] -> [app.run()]
   
3. templates 폴더 복사 
   - cp -r templates deploy/templates
   
4. 설치된 Python 패키지 목록 생성
   - pip freeze > deploy/requirements.txt

Python AWS 패키지 설치

패키지 설치.
pip install awsebcli

설치중 오류 발생시 패키지 추가 설치.
pip install -U "bcrypt<4.0.0"
pip install urllib3==1.26.5

AWS 명령어를 통해 배포

Elastic Beanstalk 초기 설정.
- eb init

Python 웹 배포.
- eb create myweb

Python 웹 수정.
- eb deploy myweb

 

기존 Credential 정보가 입력되어 있는 경우.
1. 프로파일 생성 
   - aws configure --profile "생성하고자 하는 profile 이름"
   
2. Python venv 진입
   - source venv/bin/activate
   
3. 생성한 Profile을 통해 eb init
   - eb init --profile "생성한 profile 이름"

배포 웹 페이지 URL

 

주펄 팬명록

스트리머에게 응원 한마디

myweb.eba-dfueep3y.ap-northeast-2.elasticbeanstalk.com

좋았던 점

AWS 계정을 직접 만들고 내가 만든 웹 페이지를 실제로 배포해 볼 수 있었다. meta 태그를 직접 사용해 URL 전송을 할 때 이미지, 제목, 설명이 노출되게 할 수 있었다. 마지막으로 웹종합 강의를 끝까지 완주함으로 성취감을 얻을 수 있어 좋았다.