본문 바로가기

레퍼런스

AWS 서버 구매, 설정, 실행 + 도메인 연결(가비아)

https://ap-northeast-2.console.aws.amazon.com/ec2/v2/home?region=ap-northeast-2#Home: 

 

https://ap-northeast-2.console.aws.amazon.com/ec2/v2/home?region=ap-northeast-2#Home:

 

ap-northeast-2.console.aws.amazon.com

1. 지역설정

2. 인스턴스 생성(ubuntu 1대는 무료로 이용가능함)

검토 등등 진행 후 새키페어 생성하여 바탕화면에 저장 후 인스턴스 실행

 

 

 

이후 Git Bash 실행(CMD아님 기능이 약간차이남)

ssh -i 키페어 드래그앤드랍 ubunbu@복사해온퍼블릭IPv4주소

해당 인스턴스의 퍼블릭 IPv4주소를 복사해와서 마우스 오른쪽 클릭해서 paste 후 엔터눌리면 접속완료

리눅스 OS가 깔린 컴퓨터를 사고 접속까지 한 것

기본적인 리눅스 명령어

ls 현재 위치 확인

cd 이동

mkdir 폴더생성

 

EC2서버 한방에 세팅하기

리눅스에서 파이썬 편하게 사용하기 위해 패키지 설치 명령어

차례대로 5줄 복붙

 

 

# python3 -> python (명령어를 python3라고 쓰지않고 python으로만 명령어사용)
sudo update-alternatives --install /usr/bin/python python /usr/bin/python3 10

# pip3 -> pip (flask등 패키지를 설치할때 필요한 패키지 마법사같은아이)
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 (포트포워딩 - 포트에 5000을 굳이 안적어되게하는 명령어 80으로 들어와서 5000으로 쏴주기)
sudo iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 5000

 

이후 파일질라 켜서 서버컴퓨터와 연결

새로 생성 -> 프로토콜 SFTP 설정 -> 호스트에 ip주소 복붙 - 포트 22 ->

로그온유형 : 키파일 -> 사용자 ubuntu 입력 -> 키페어파일 : 아까 생성해뒀던 파일지정

연결된 이후 static, templates, app.py를 서버컴퓨터에 올린 후

패키지들을 설치해야되기때문에 명령어 pip install 패키지명 입력하여 설치

실제로 실행해보기

파이썬 프로그램 종료를 위해서는 Ctrl + C 입력하면 종료됨

새로산 컴퓨터 인스턴스의 보안 설정

규칙편집에 들어가서 포트 5000을 열어줘야함

 

nohup 설정하기(Git bash(원격접속)를 끄게되더라도 계속해서 서버가 돌아갈 수 있도록 하는 것)

nohup python app.py & 입력

# 서버 강제 종료하기 명령어

ps -ef | grep 'python app.py' | awk '{print $2}' | xargs kill

 

이후 배포할때는 static templates .py파일을 파일질라로 업데이트하여 재실행하기만하면 끝

 

 

# 도메인 연결하기

가비아에서 도메인을 구매하여 DNS 설정에서 위 컴퓨터의 ip주소를 입력해주기만 하면 끝