GAE standard 환경에서 Python3 + Django로 서버 구축
GAE standard 환경에서 python3을 사용할 수있게되었습니다!
오랫동안 GAE의 표준 환경에서는 python2 만 사용할 수있었습니다.
python3으로 만들려면 flexible 환경을 사용해야 했지만 2018 년 7 월 python3 대응했습니다!
htps : // c ぉ dp t t rm. 오 g b b g. 이 m / 2018 / 07 / b 린긴 g - ぇ - st - 오 - r ゔ ぇ r ぇ s -. HTML
그것의 무엇이 대단한가요?
htps : // 이 m/도 k 같다/있어 ms/77f44551b8d219cfb370
이번에는 그 python3을 사용하여 장고를 움직이는 곳까지 할 것입니다.
구축 완료 후에 비늘 기억으로 쓰고 있으므로 빠져있는 곳이 아마 있습니다. 용서를.
1. 사전 준비
1-1. GAE 설정
python2 standard 환경에서의 장고 구축 방법은 공식 페이지에 기재되어 있으므로 보러 갑니다.
사전 준비는 python3에서도 변하지 않으므로 공식에 따라 체크박스를 채워 갑시다.
Google Cloud SQL API를 사용하도록 설정해야 합니다.
htps : // c ぉ d. 오, ぇ. 코 m / py 텐 / d 쟈고 / 아펜 기네? hl = 그럼
기본 흐름은 python2와 동일합니다. 망설이면 공식입니다!
1-2. 파이썬 개발 환경 구축
물론 파이썬도 설치해 둡시다. 이것도 공식이 쓰고있어!
h tps : // c ぉ d. 오, ぇ. 코 m/py 텐/세츠 p? hl = 그럼
1-3. 샘플 다운로드
'앱 다운로드 및 실행' 에서 샘플을 얻을 수 있다고 합니다.
가져와 보자. 리포지토리를 clone!
git clone https://github.com/GoogleCloudPlatform/python-docs-samples.git
... 어!
flexible과 standard와 함께, python3의 샘플 앱도 있다! (그 외는 python2의 샘플 앱 다요)
어느 것 ...
미안해!!
standard(python2)은 가득 찼는데 ...
hello_world의 내용을 보면 flask의 최소 구조였다. 하지만 릴리즈 했을 뿐이다, 어쩔 수 없다.
이번에는 이 hello_world와 python2 Django의 샘플 앱을 참고로 구축해 보겠습니다.
/python-docs-samples/appengine/standard_python37/hello_world
/python-docs-samples/appengine/standard/django
2. Django의 새로운 앱 만들기
불필요한 불순물이 섞이지 않도록 Django를 설치하고 Django 명령에서 앱 만들기
pip install Django==2.1.1
django-admin.py startproject my_app ./
3. 파일 구성
샘플 앱 /python-docs-samples/appengine/standard/django
필요한 파일을 복사하거나 같은 최종 필요한 파일 구성은 아래에.
├── [app_name]
│ ├── settings.py
│ ├── urls.py
│ ├── views.py
│ └── wsgi.py
├── app.yaml
├── manage.py
└── requirements.txt
샘플 앱에서 가져오는 파일은 아래.
1-1. GAE 설정
python2 standard 환경에서의 장고 구축 방법은 공식 페이지에 기재되어 있으므로 보러 갑니다.
사전 준비는 python3에서도 변하지 않으므로 공식에 따라 체크박스를 채워 갑시다.
Google Cloud SQL API를 사용하도록 설정해야 합니다.
htps : // c ぉ d. 오, ぇ. 코 m / py 텐 / d 쟈고 / 아펜 기네? hl = 그럼
기본 흐름은 python2와 동일합니다. 망설이면 공식입니다!
1-2. 파이썬 개발 환경 구축
물론 파이썬도 설치해 둡시다. 이것도 공식이 쓰고있어!
h tps : // c ぉ d. 오, ぇ. 코 m/py 텐/세츠 p? hl = 그럼
1-3. 샘플 다운로드
'앱 다운로드 및 실행' 에서 샘플을 얻을 수 있다고 합니다.
가져와 보자. 리포지토리를 clone!
git clone https://github.com/GoogleCloudPlatform/python-docs-samples.git
... 어!
flexible과 standard와 함께, python3의 샘플 앱도 있다! (그 외는 python2의 샘플 앱 다요)
어느 것 ...
미안해!!
standard(python2)은 가득 찼는데 ...
hello_world의 내용을 보면 flask의 최소 구조였다. 하지만 릴리즈 했을 뿐이다, 어쩔 수 없다.
이번에는 이 hello_world와 python2 Django의 샘플 앱을 참고로 구축해 보겠습니다.
/python-docs-samples/appengine/standard_python37/hello_world
/python-docs-samples/appengine/standard/django
2. Django의 새로운 앱 만들기
불필요한 불순물이 섞이지 않도록 Django를 설치하고 Django 명령에서 앱 만들기
pip install Django==2.1.1
django-admin.py startproject my_app ./
3. 파일 구성
샘플 앱 /python-docs-samples/appengine/standard/django
필요한 파일을 복사하거나 같은 최종 필요한 파일 구성은 아래에.
├── [app_name]
│ ├── settings.py
│ ├── urls.py
│ ├── views.py
│ └── wsgi.py
├── app.yaml
├── manage.py
└── requirements.txt
샘플 앱에서 가져오는 파일은 아래.
pip install Django==2.1.1
django-admin.py startproject my_app ./
샘플 앱
/python-docs-samples/appengine/standard/django
필요한 파일을 복사하거나 같은 최종 필요한 파일 구성은 아래에.├── [app_name]
│ ├── settings.py
│ ├── urls.py
│ ├── views.py
│ └── wsgi.py
├── app.yaml
├── manage.py
└── requirements.txt
샘플 앱에서 가져오는 파일은 아래.
3-1. app.yaml
runtime: python37
entrypoint: gunicorn -b :$PORT [app_name].wsgi:application
handlers:
- url: /static
static_dir: static/
- url: .*
script: [app_name].wsgi.application
해설
runtime
를 python27
=> python37
로 변경. 이것이 있으면 deploy 오류가 발생합니다.
공식 참조를 보면 python37의 runtime에서는 지원하지 않아!
h tps : // c ぉ d. 오, ぇ. 코 m / 아펜 기네 / 도 cs / s 단지 rd / py 텐 3 / 곤후 g / 아 뿌레 f
무엇 그것? 자세한 것은 이쪽.
htps : // c ぉ d. 오, ぇ. 코 m/아펜기네/도 cs/fぃぃbぇ/py 텐/룬치메? hl = 그럼 # 아 p ぃ 카치온 _ s r p
3-2. requirements.txt
PyMySQL
Django>=2.1.1
gunicorn
변경점
app.yaml
에서 추가한 entrypoint 설정에 필요합니다. 그렇지 않으면 배포 중에 오류가 발생합니다. 현재 다운로드한 최신 버전 이상의 버전을 지정합니다.
3-3. 눈가리 gs. py
django 명령으로 앱을 만들면 데이터베이스 연결이 sqlite가됩니다.
물론 cloud sql로 합시다.
sqlite를 삭제하고 setting.py를 공식적으로 변경하십시오.
h tps : // c ぉ d. 오, ぇ. 코 m / py 텐 / d 쟈고 / 아펜 기네? hl = 그럼 # 어서 rs 응 ぢ g_
여기에서는 거의 공식 페이지 을 참고로 하면 OK입니다만, 일단 간단하게 써 둡니다.
4. 로컬에서 실행 확인
virtualenv env
source env/bin/activate
manage.py migrate
python manage.py runserver
종료시
deactivate
공식:
h tps : // c ぉ d. 오, ぇ. 코 m / py 텐 / d 쟈고 / 아펜 기네? hl = 그럼 # 루 _ ぇ _ 아 p_ 온 _ r_
5. GAE에 deploy
gcloud auth login
python manage.py collectstatic
gcloud app deploy
공식:
htps : // c ぉ d. 오, ぇ. 코 m / py 텐 / d 쟈고 / 아펜 기네? hl = 그럼,
Reference
이 문제에 관하여(GAE standard 환경에서 Python3 + Django로 서버 구축), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/gansoishiyakibibinba/items/1917271380ab58be2625
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
virtualenv env
source env/bin/activate
manage.py migrate
python manage.py runserver
deactivate
gcloud auth login
python manage.py collectstatic
gcloud app deploy
공식:
htps : // c ぉ d. 오, ぇ. 코 m / py 텐 / d 쟈고 / 아펜 기네? hl = 그럼,
Reference
이 문제에 관하여(GAE standard 환경에서 Python3 + Django로 서버 구축), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/gansoishiyakibibinba/items/1917271380ab58be2625텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)