PyCon APAC 2016: Django, Flask 고민없이 개발하고 서비스하는 PaaS, IBM Bluemix

28
IBM Bluemix Django, Flask 고민없이 개 발하고 서비스하는 PaaS, IBM Bluemix Jin Gi KONG, 공진기 Bluemix Technical Evangelist PyCon APAC 2016

Transcript of PyCon APAC 2016: Django, Flask 고민없이 개발하고 서비스하는 PaaS, IBM Bluemix

Page 1: PyCon APAC 2016: Django, Flask 고민없이 개발하고 서비스하는 PaaS, IBM Bluemix

IBM Bluemix

Django,Flask고민없이개발하고서비스하는 PaaS,

IBMBluemixJin GiKONG,공진기

BluemixTechnicalEvangelistPyCon APAC2016

Page 2: PyCon APAC 2016: Django, Flask 고민없이 개발하고 서비스하는 PaaS, IBM Bluemix

IBM Bluemix

목차• FlaskonBluemix• DjangoonBluemix• Bluemix소개• PythononIBM• IBMandDeveloper

Page 3: PyCon APAC 2016: Django, Flask 고민없이 개발하고 서비스하는 PaaS, IBM Bluemix

IBM Bluemix

누구?• BluemixTechnicalEvangelist

• ShopST• 구매대행스타트업

• Django• Twisted• Celery+RabbitMQ• PostgreSQL

• AndroidROM개발

• 이것저것조금씩• Networkadmin• Serveradmin• Development• Security• Mobile• IoT• Cognitivescience

Page 4: PyCon APAC 2016: Django, Flask 고민없이 개발하고 서비스하는 PaaS, IBM Bluemix

IBM Bluemix

FlaskonBluemix

Page 5: PyCon APAC 2016: Django, Flask 고민없이 개발하고 서비스하는 PaaS, IBM Bluemix

IBM Bluemix

Flask표준유형

Page 6: PyCon APAC 2016: Django, Flask 고민없이 개발하고 서비스하는 PaaS, IBM Bluemix

IBM Bluemix

Flask표준유형 -데모

Page 7: PyCon APAC 2016: Django, Flask 고민없이 개발하고 서비스하는 PaaS, IBM Bluemix

IBM Bluemix

DjangoonBluemix

Page 8: PyCon APAC 2016: Django, Flask 고민없이 개발하고 서비스하는 PaaS, IBM Bluemix

IBM Bluemix

Djangoonlocal• 노란색글씨는적절히변경하면됩니다.$pipinstallDjango==1.8$django-adminstartproject pyconkr_jgkong$cdpyconkr_jgkong$./manage.py syncdb$./manage.py runserver

Page 9: PyCon APAC 2016: Django, Flask 고민없이 개발하고 서비스하는 PaaS, IBM Bluemix

IBM Bluemix

Pythonbuildpack• Procfile

• 앱시작시사용할명령어• ex)web:pythonmanage.py runserver0.0.0.0:$VCAP_APP_PORT

• Procfile존재시 Pythonbuildpack이자동으로선택

• requirements.txt• 앱배포시필요한 pip패키지목록• pipfreeze>requirements.txt

• manifest.yml• CloudFoundry실행시사용하는설정파일• name,memory,host,domain등설정가능

Page 10: PyCon APAC 2016: Django, Flask 고민없이 개발하고 서비스하는 PaaS, IBM Bluemix

IBM Bluemix

DjangoBluemix로올려보기• 붉은색글씨는겹치지않는이름으로반드시변경해야합니다.$echo"web:pythonmanage.py runserver0.0.0.0:\$VCAP_APP_PORT">Procfile$echo"Django==1.8">requirements.txt$echo"STATIC_ROOT=os.path.join(BASE_DIR,'static')">>pyconkr_jgkong/settings.py$cf login-aapi.ng.bluemix.net$cf pushpyconkr-jgkong

Page 11: PyCon APAC 2016: Django, Flask 고민없이 개발하고 서비스하는 PaaS, IBM Bluemix

IBM Bluemix

DjangoWSGIwithgunicorn$echo"web:gunicorn pyconkr_jgkong.wsgi --workers3-b0.0.0.0:\$VCAP_APP_PORT">Procfile$echogunicorn >>requirements.txt$cf pushpyconkr-jgkong

Page 12: PyCon APAC 2016: Django, Flask 고민없이 개발하고 서비스하는 PaaS, IBM Bluemix

IBM Bluemix

DjangoStaticfile:dj_static.Cling$echodj_static >>requirements.txt• pyconkr_jgkong/wsgi.py

$cf pushpyconkr-jgkong

import os

from django.core.wsgi import get_wsgi_applicationfrom dj_static import Cling

os.environ.setdefault("DJANGO_SETTINGS_MODULE", "pyconkr_jgkong.settings")

application = Cling(get_wsgi_application())

Page 13: PyCon APAC 2016: Django, Flask 고민없이 개발하고 서비스하는 PaaS, IBM Bluemix

IBM Bluemix

DjangoStaticfile:별도인스턴스$./manage.py collectstatic --noinput$cf pushpyconkr-jgkong-static -bhttps://github.com/cloudfoundry/staticfile-buildpack -pstatic

• settings.py의 STATIC_URL수정

$cf pushpyconkr-jgkongSTATIC_URL = '//pyconkr-jgkong-static.mybluemix.net/'

Page 14: PyCon APAC 2016: Django, Flask 고민없이 개발하고 서비스하는 PaaS, IBM Bluemix

IBM Bluemix

Bluemix정리

Page 15: PyCon APAC 2016: Django, Flask 고민없이 개발하고 서비스하는 PaaS, IBM Bluemix

IBM Bluemix

© IBM Corporation 15

Page 16: PyCon APAC 2016: Django, Flask 고민없이 개발하고 서비스하는 PaaS, IBM Bluemix

IBM Bluemix

© IBM Corporation

산, 바다, 계곡 캠핑장 글램핑 호텔Traditional IT Infrastructure as a Service

Platform as a Service

Software as a Service

16

일상을벗어난캠핑 -선택옵션들

사이트

데크

텐트

그릴

바비큐

맥주

사이트

데크

텐트

그릴

바비큐

맥주

사이트

데크

텐트

그릴

바비큐

맥주

사이트

데크

텐트

그릴

바비큐

맥주

Page 17: PyCon APAC 2016: Django, Flask 고민없이 개발하고 서비스하는 PaaS, IBM Bluemix

IBM Bluemix

© IBM Corporation 17

Complete Flexibility between PaaS and IaaS

Customer Managed

Service Provider Managed

… delivered as a public, dedicated, or on-premises implementation.

Infrastructure as a Service

CodeDataRuntimeMiddlewareOSVirtualizationServersStorageNetworking

CodeDataRuntimeMiddlewareOSVirtualizationServersStorageNetworking

Platform as a Service

CodeDataRuntimeMiddlewareOSVirtualizationServersStorageNetworking

CodeDataRuntimeMiddlewareOSVirtualizationServersStorageNetworking

Traditional IT Software as a Service

Page 18: PyCon APAC 2016: Django, Flask 고민없이 개발하고 서비스하는 PaaS, IBM Bluemix

IBM Bluemix

© IBM Corporation 18

How does Bluemix work?Bluemix is underlined by three key open compute technologies: Cloud Foundry, Docker, and OpenStack. It extends each of these with a growing number of services, robust DevOps tooling, integration capabilities, and a seamless developer experience.

Your Own Hosted Apps / Services

BluemixPublic

Powered by IBM SoftLayer

Platform Deployment Options that Meet Your Workload Requirements

BluemixDedicated

BluemixLocal

In Your Data Center

Instant Runtimes

+Containers

+Flexible Compute Options to Run Apps / Services

Virtual Machines

+

DevOpsTooling

+

Integration and API Mgmt

+

Catalog of Services that Extend Apps’ Functionality

Web Data Mobile AnalyticsCognitive IoT Security Yours+

On the IBM SoftLayer Cloud

Page 19: PyCon APAC 2016: Django, Flask 고민없이 개발하고 서비스하는 PaaS, IBM Bluemix

IBM Bluemix

Freetrial&Freetier?• Freetrial30일

• 등록후 30일동안뭘해도청구 0원• 체험및테스트기간

• Freetier• 앱및서비스마다제공되는무료사용구간• 앱: 375GB*H

• 512M짜리앱한개,혹은 256M짜리앱두개를한달내내돌릴수있는양

• 개인홈페이지나간단한테스트개발가능• 기타서비스도대부분 Freetier제공

• 네트워크비용: 0원

Page 20: PyCon APAC 2016: Django, Flask 고민없이 개발하고 서비스하는 PaaS, IBM Bluemix

IBM Bluemix

PythononIBM

Page 21: PyCon APAC 2016: Django, Flask 고민없이 개발하고 서비스하는 PaaS, IBM Bluemix

IBM Bluemix

PythonRuntime

Page 22: PyCon APAC 2016: Django, Flask 고민없이 개발하고 서비스하는 PaaS, IBM Bluemix

IBM Bluemix

WatsonDeveloperCloud

https://www.ibm.com/watson/developercloud/language-translation/api/v2/#translate

Page 23: PyCon APAC 2016: Django, Flask 고민없이 개발하고 서비스하는 PaaS, IBM Bluemix

IBM Bluemix

IBMandDeveloper

Page 24: PyCon APAC 2016: Django, Flask 고민없이 개발하고 서비스하는 PaaS, IBM Bluemix

IBM Bluemix

developerWorks한국기술포럼

https://developer.ibm.com/kr/cloud/bluemix/

Page 25: PyCon APAC 2016: Django, Flask 고민없이 개발하고 서비스하는 PaaS, IBM Bluemix

IBM Bluemix

SmartCamp 2016,comingsoon

http://smartcamp2016.com/

Page 26: PyCon APAC 2016: Django, Flask 고민없이 개발하고 서비스하는 PaaS, IBM Bluemix

IBM Bluemix

BluemixMeetup

https://www.facebook.com/events/905982122847028/

Page 27: PyCon APAC 2016: Django, Flask 고민없이 개발하고 서비스하는 PaaS, IBM Bluemix

IBM Bluemix

CognitiveCloudConnect

http://www-903.ibm.com/kr/ibmcloudcenter/

Page 28: PyCon APAC 2016: Django, Flask 고민없이 개발하고 서비스하는 PaaS, IBM Bluemix

IBM Bluemix

Links• Bluemix문서https://new-console.ng.bluemix.net/docs/

• developerWorkshttps://developer.ibm.com/kr/cloud/

• BluemixFacebookUsergrouphttps://www.facebook.com/groups/BluemixStudy