CentOS는 배포는지도와 첫 번째 키 포인트 플라스크, 그리고 발생할 수있는 문제점 및 해결책을 나타냅니다.
사진보기, 당신이 [다운로드]를 볼 수 있습니다, 선명도 단어를 볼 수 있습니다
[대상]
- LAN은 URL 플라스크에 기록 된 API를 통해 액세스 할 수 있습니다
- 플라스크 프로젝트 업데이트, 자동 배치 한 후에
[도구]
자동 배포 도구가 포함 :
- gitlab
- 젠킨스
도구를 포함하는 배포 플라스크 프로젝트 :
- 플라스크 프로그래밍
- gunicorn : 방법 플라스크 프로젝트를 시작 gunicorn
- 의 nginx : 브라우저가 무슨 일이 있었는지 뒤에, 플라스크-API를 방문 gunicorn와 사이의 nginx 명확한 관계
- 감독 : 마스터
- 리눅스 : 프로세스를 종료, 파일, 디렉토리 변경, 설치 도구를 만들기 시작 / 다시 시작 / 도구를 닫습니다, 점유 포트 번호를 확인하고,
[소개] 환경
- 운영 환경을 플라스크 :
python3, pip3, 파이썬 가상 환경
- 배포 환경 :
centOS7
[순서]
구성 gunicorn :
1. 가상 환경을 생성하고 (gunicorn 설치 PIP) gunicorn 다운로드
2. 다음과 같이 프로젝트 wsgi.py의 루트 디렉토리에 gunicorn 부팅 파일을 만듭니다 읽
에서 응용 프로그램 수입 create_app의
응용 프로그램 = create_app ()
경우 __name__ == ' __main__ ' :
application.run ()
3. 명령을 시작합니다 :
-w 4 -b 127.0.0.1:8000 WSGI를 gunicorn : 응용 프로그램을
검증 결과 :
이 시간 명령 요청 URL하여 응답 결과를 볼 수 있습니다. 그래서 그것은 좋은 유통 gunicorn입니다
http://127.0.0.1:8000 / 사용자 컬
nginx를 구성 :
nginx를 설치 :
냠의 nginx를 설치 -y
메시지가 패키지를 사용할 수없는 경우, 해결책 : (7)를 CentOS에서 패키지를 제안하는 것은 사용할 수 없습니다, 냠의 nginx를 설치 사용의 nginx를 설치
이 포트 번호 80이 점유되어 있기 때문에, nginx를 시작하는 데 실패 할 경우, 솔루션 : centos7의 ngxin를 시작하지 못했습니다 : nginx.service에 대한 작업은 (80 포트 솔루션이 점유) 실패
검증 결과 :
의 nginx를 시작한 후) 브라우저를 열고 포트 nginx를 사용 http://10.2.1.92:8001(8001 입력
다음과 같은 인터페이스를 참조 nginx를 구축 할 수있는 완벽한 환경을 나타냅니다
의 nginx 프록시 gunicorn 서비스를 사용하여 구성
특정 구성을 참조 : gunicorn 구성의 Nginx +
검증 결과 :
검증 결과를하기 전에 gunicorn가 시작하기
구성 관리 감독자 gunicorn 과정 (시작 | 재시작 | 닫기)
마지막으로, gunicorn 백그라운드 프로세스를 시작하거나 명령 창을 해제하려면 관리자를 사용 gunicorn 과정은 물론, 모두가 결과를보고 싶어, 죽었다
을 참조하여 감독자 구성, 감독자의 사용
검증 결과 :
관리자에 의해 gunicorn를 시작한 후, 명령 줄 창을 끄고, 액세스 주소 A / 라우팅 주소 (A 주소 무엇을, 무화과를 참조.)를, 올바른 응답 결과가 성공적으로 시작 수퍼바이저 gunicorn를 나타내는 참조 주목
이러한의 nginx + gunicorn + 관리자 배포 플라스크 프로젝트가 구성됩니다.
프로젝트 업데이트, 자동 배포를 구성합니다 :
如果想要实现更新flask项目,自动布署,可以借助jenkins与gitlab的web-hook功能。
具体配置方法(只看前面与gitlab的配置即可,后面写的很乱,不用看):如何创建一个项目,让gitlab自动触发jenkins进行构建
验证结果:
在项目中新建1个测试文件:test.py,提交到仓库
在服务器~/.jenkins/workspace/job名称下查看,也存在test.py文件,即表示自动布署配置成功
具体的配置不太清楚时,可以看看这1篇,写的很乱,但可能会记录一些具体配置