본문 바로가기
DEVELOPMENT/SERVER(centos7)

Centos8 flask express 설정하기

by Z@__ 2021. 3. 18.
반응형

 

 

 

zelord.tk:3000/coin

 

 

코인 시세조회 기능을 만들다가 bin/bash를 건드렸는데.... 돌이킬 수가 없었다.(하.. 역시 안건드리는 게 최고...ㅜ)

 

그래서 서버를 새로 만들어서 처음부터 셋팅을 다시 해줬다.

 

기존에 Centos7에서 Centos8로 바꾸고 설정을 정리해보았다.

 

 

Flask 설치하기

sudo dnf clean all
sudo dnf install epel-release
sudo dnf update

sudo dnf install python3

python3 --version

sudo alternatives --set python /usr/bin/python3

pip3 install Flask

python -m flask --version

 

 

 

예전에는 전부 yum으로 설치했던 것 같은데 centos8부터는 dnf가 권장되나보다. 물론 yum도 가능

 

sudo dnf clean all

sudo dnf install epel-release

sudo dnf update

 

dnf를 사용하기전에 한번 업데이트를 해주고

 

sudo dnf install python3 / python3 --verision을 통해서 python3를 설치하고 설치된 버전을 확인해준다

 


sudo alternatives --set python /usr/bin/python3 는 python을 실행할 때, python3라고 쓰는 게 불편할 때 python을 치면 바로 python3 link를 해주는 명령어이다.

 

pip3 install Flask, python -m flask --version 을 통해 Flask를 설치하고 버전을 확인해준다.

 

이렇게 하면 flask 기본 설정이 끝난다.

 

 

Express 설치하기

 

sudo dnf module list nodejs

sudo dnf module enable nodejs:12

sudo dnf install nodejs

node --version

앞에서 Flask를 설치해준 것에 이어서

 

dnf에서 nodejs 리스트를 찾아주고 그중에 12버전을 선택한 뒤 인스톨하면 된다.

 

 

 

포트 설정하기

firewall-cmd --zone=public --permanent --add-port=80/tcp
firewall-cmd --zone=public --permanent --add-port=3000/tcp
firewall-cmd --reload
firewall-cmd --zone=public --list-all

이렇게 Flask에서 사용할 80번 포트와 express에서 사용할 3000 포트를 열어줘야 외부에서 접근이 가능하다 

 

centos7과 동일

 

 

Flask 실행해보기

from flask import Flask
app = Flask(__name__)

@app.route('/')
def hello_pybo():
    return 'Hello, Pybo!'

main.py 라는 이름으로 이렇게 파일을 만들어준 뒤,

 

export FLASK_APP=main.py 
flask run --host=0.0.0.0 --port=80
nohup flask run --host 0.0.0.0 --port=80 &

 

이렇게 해주면 웹서버에 접속할 수 있다.

 

서버와 연결을 끊었을 때도 계속 실행되게 하려면 세번째 줄에 nohup과 &를 이용하면 된다.

 

 

 

Express 실행해보기

npm을 통해 필요한 패키지를 깔아주고

 

package.json에

 

"scripts" : {
	"start": "pm2 start ./bin/www"
 	"stop": "pm2 stop ./bin/www"
}

 

이렇게 넣어주면 pm2를 통해 서버가 죽었을 때, 자동으로 재실행되도록 관리할 수 있다.

 

npm start / npm stop으로 express 서버를 껏다켰다 할 수 있다.

 

 

반응형

댓글