https://ap-northeast-2.console.aws.amazon.com/ec2/v2/home?region=ap-northeast-2
https://ap-northeast-2.console.aws.amazon.com/ec2/v2/home?region=ap-northeast-2
ap-northeast-2.console.aws.amazon.com
위의 aws 들어가서 회원가입하고
- 인스턴스에 들어가서 시작을 눌러준다.
- ubuntu server 20.04(프리 티어)를 선택한다.
- 검토 및 시작 -> 시작하기를 눌러준다.
- 키 페어 생성을 해준다.
뭔가 수정하고 싶으면 인스턴스 중지를 하고 수정하고 다시 시작을 하면된다!!
위와 같이 뜬다.
그 다음 git.bash에 들어가서 ssh -i /c/Users/hojadotcom/Desktop/sparta_mykey.pem(키페어) ubuntu@ 3.38.108.142(퍼블릭 IPV4)를 복사해준다.
그러고 yes를 입력하면 해당 서버에 접속한다.
mkdir sparta로 폴더를 만들어준다.
만약 이 폴더 밖으로 나가려면 cd ..눌러주면 된다.
# python3 -> python
sudo update-alternatives --install /usr/bin/python python /usr/bin/python3 10
원래 명령어가 python3인데 걍 python으로 명령하겠다
# pip3 -> pip
sudo apt-get update
sudo apt-get install -y python3-pip
sudo update-alternatives --install /usr/bin/pip pip /usr/bin/pip3 1
필요한 패키지들을 깔아준다.
# port forwarding
sudo iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 5000
포트번호 5000을 떼게 해준다.
그 다음 파일질라를 켜준다.
왼쪽이 내 컴퓨터 오른쪽이 서버 컴퓨터이다.
먼저 내 사이트에서 이름을 지어준다.
프로토콜을 SFTP로 바꿔준다.
호스트는 Public IPV4를 복사해서 사용한다
포트는 22번을 넣어준다.
로그온 유형은 키파일로 해주고
사용자는 ubuntu로 해주고
키파일 확장자를 pem으로 해주고 키를 넣어준다.
오른쪽에 연결이 되면 static, templates, app.py를 넣어준다.
그 다음 필요한 패키지들을 다운받아준다.
pip install flask
pymongo
dnspython
이렇게 다운받아주고 다시 python app.py로 실행시켜준다.
그 다음 그 ipv4를 실행시키면 안나온다!!
왜냐하면 5000번으로 접속할 수 있는 구멍을 아직 안뚫었기 때문!
따라서
인스턴스의 보안에 가서 인바운드 규칙 편집을 해준다.
거기서 규칙을 추가해주고 포트범위를 5000, 소스를 anywhere IPv4로 해준다.
그 다음 규칙 저장 눌러주고 그 ip주소를 복사하면 그 사이트에 접속이 가능하다.
하지만 만약 이 상태면 git-bash를 끄면 이제 해당 사이트에 방문하는 것이 불가능해진다.
따라서 원격접속을 종료해도 서버가 돌아갈 수 있도록 nohup을 해줘야한다.
따라서 그 때는 서버를 실행시킬때 그냥 app.py로 실행시키는 것이 아니라
nohup python app.py &로 실행시켜야 한다
그러면 git-bash를 꺼도 사이트에 접속할 수 있다.
만약 서버를 종료하고 싶다면
ps -ef | grep 'python app.py' | awk '{print $2}' | xargs kill
아래 코드를 입력하면 종료된다.
'파이썬' 카테고리의 다른 글
함수와 클래스 (0) | 2021.11.29 |
---|---|
딕셔너리 (0) | 2021.11.28 |
도메인 연결과 og태그 (0) | 2021.11.11 |
스파르타 코딩 수업 db연동 및 크롤링 연습 (0) | 2021.11.08 |
크롤링 (0) | 2021.11.07 |
댓글