IBM Cloud에 Python Flask App 배포하기

2020. 7. 7. 15:44Information Technology/Python

IBM Cloud 명령어를 통해 Python Flask web app을 배포해보겠습니다.

 

1. 로그인

 - ibmcloud login --sso

 

2. Target 지정

- ibmcloud target --cf

- ibmcloud target --cf-api https://api.ng.bluemix.net

 

3. 조직 영역 설정

- ibmcloud target -o jihyun@kr.ibm.com -s TEST

 

4. 리소스 그룹 설정

- ibmcloud target -g default(디폴트인 경우)

 

5. 전부다 설정 된 화면

 

6. Flask app을 배포하기 위한 폴더로 이동

 

7. IBM Cloud에 배포 

- ibmcloud cf push -m 256m FLASK_APP(배포앱) -b python_buildpack -c "python3 app.py"

 > m : 메모리 설정

 > b : 빌드팩

 > c: command 구동명령어

 

8. 배포 확인

- 아래와 같이 상태 실행중 인 경우 정상쩍으로 서비스 되고 있다.

 

 

[주의사항]

- 배포시 해당 에러가 발생한다면 err failed to make tcp connection to port 8080: connection refused 원인은 2가지로 보여진다.

1) 배포시 8080 포트를 설정해 두지 않으면 health check에서 에러가 발생할 수 있다.

 - 이 경우에 꼭 포트를 80800으로 지정해준다.

 예) port = int(os.getenv('PORT', '8080'))

       app.run(host="0.0.0.0", port=port, debug=True)

 

2) healch check 시간이 너무 짧은 경우 

 - 이 경우에는 배포 명령어에 추가로 -t 600(최대 초)를 추가해준다

 

 

감사합니다.