웹개발 종합반 5주차_23일

ddabong-dochi·2022년 5월 12일
0

서버 세팅하기

✍️서버 환경 통일하기

우리는 지금 막! 컴퓨터를 구매한 상태이다. 여기에 이런저런 세팅들(업그레이드, DB설치, 명령어 통일 등)을 해줘야 본격적으로 이용할 때 편리하다.

  • EC2 한방에 세팅하기
# python3 명령어를 python으로 사용할 수 있게 하는 명령어
# python3 -> python
sudo update-alternatives --install /usr/bin/python python /usr/bin/python3 10

# 1) pip3 설치 2) pip3 명령어를 pip으로 사용할 수 있게 하는 명령어
# 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

# 80포트로 들어오는 요청을 5000포트로 넘겨주는 명령어
# port forwarding
sudo iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 5000

filezilla를 이용해서 간단한 python 파일을 올려본다.


Host에는 내 EC2서버의 퍼블릭 IPv4 주소를 복사해서 넣는다. ip // User: ubuntu로 입력

마우스로 드래그 해서 파일을 업로드/다운로드하면 된다.

Flask 서버를 실행해보기

  • filezilla에서 homework 폴더 째로 드래그 드롭으로 EC2 인스턴스의 home/ubuntu폴더에 업로드한다.
  • pip로 패키지 설치
pip install flask
pip install pymongo
pip install dnspython
  • flask 서버 실행해보기

    아래 명령어로 flask 서버를 실행한다.
    python app.py
    서버 실행이 되면, 크롬에서 접속을 해본다.
    크롬 브라우저 창에 아래와 같이 입력한다.
    http://[내 EC2 IP]:5000/

  • AWS에서 5000포트를 열어주기
    EC2서버(=가상의 내 컴퓨터)에서 포트를 따로 설정하는 것 외에도 AWS EC2에서도 자체적으로 포트를 열고/닫을 수 있게 관리를 하고 있다. 그래서 AWS EC2 Security Group에서 인바운드 요청 포트를 열어줘야 한다.
    일단 EC2 관리 콘솔로 들어간다. 그리고 보안그룹(영문: Security Group)을 눌러 들어간다. launch-wizard-1이라고 쓰여 있다.

    해당 보안그룹을 클릭한다.
    Edit inbound rules를 선택한다.(인바운드 규칙 편집)
    ✔️두 가지 포트를 추가해보자. Anywhere-IPv4를 클릭한다.

    80포트: HTTP 접속을 위한 기본 포트
    5000포트: flask 기본 포트

어떻게 되는걸까? 포트 번호 없애기 기본 개념

지금은 5000포트에서 웹서비스가 실행되고 있다. 그래서 매번 :5000이라고 뒤에 붙여줘야 한다. 뒤에 붙는 포트 번호를 없애려면 어떻게 해야 할까?
http 요청에서는 80포트가 기본이기 때문에 굳이 :80을 붙이지 않아도 자동으로 연결이 된다.
포트 번호를 입력하지 않아도 자동으로 접속되기 위해 우리는 80포트로 오는 요청을 5000포트로 전달하게 하는 포트포워딩(port forwarding)을 사용한다.

profile
비전공자 직장인 개발일지😆

0개의 댓글