精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

在Docker中運行一個Python的Web應用

開發(fā) 后端 前端
幾周前, Elastic Beanstalk聲明在AWS云中配置和管理Docker容器。在本文中,我們通過一個簡單的注冊表單頁面應用去理解Docker部署過程,該表單使用Elastic Beanstalk Python環(huán)境。

幾周前, Elastic Beanstalk聲明在AWS云中配置和管理Docker容器。在本文中,我們通過一個簡單的注冊表單頁面應用去理解Docker部署過程,該表單使用Elastic Beanstalk Python環(huán)境。

關(guān)于注冊表單應用

幾個月之前,我們就已經(jīng)開發(fā)完這個應用并且發(fā)表在博客上。有4部分視頻和一篇文章“Using DynamoDB and SNS with Elastic Beanstalk in any Supported AWS Region”。今天,我們將在這部分內(nèi)容之上進一步的開發(fā)和討論我們怎樣部署在在Docker和Elastic Beanstalk環(huán)境中。本文將分成4個部分講解。

參考資源

原始的Python應用(非Docker化)源代碼托管在GitHub上(master版本),網(wǎng)址為https://github.com/awslabs/eb-py-flask-signup/tree/docker。Docker化的版本在docker版本中,網(wǎng)址為:https://github.com/awslabs/eb-py-flask-signup/tree/docker

如果你喜歡代碼和不同版本間的比對,你可利用GitHub對比功能查看兩個版本的區(qū)別。網(wǎng)址為https://github.com/awslabs/eb-py-flask-signup/compare/master...docker。你也可以查看Docker化后添加的每個文件或者每行代碼。

Docker化階段1:添加Dockerfile文件

首先從GitHub上克隆源代碼:

  1. $> git clone git@github.com:awslabs/eb-py-flask-signup.git  
  2. $> cd eb-py-flask-signup  
  3. $> git checkout master  

通過查看目錄內(nèi)容,知道這是一個簡單的Python應用,使用Flask框架,Boto和一些其他的依賴(在requirements.txt中聲明了該依賴),其中Boto用于DynamoDB和SNS的互動。

足夠簡單,以至于我們只需創(chuàng)建一個Dockerfile,構(gòu)建一個適用于運行該應用的鏡像。Dockerfile和其他應用源均放在目錄中(即,和requirements.txt, application.py等等放在一塊)。

  1. FROM ubuntu:12.10 
  2.  
  3. # Install Python Setuptools  
  4. RUN apt-get install -y python-setuptools  
  5.  
  6. # Install pip  
  7. RUN easy_install pip  
  8.  
  9. # Add and install Python modules  
  10. ADD requirements.txt /src/requirements.txt  
  11. RUN cd /src; pip install -r requirements.txt  
  12.  
  13. # Bundle app source  
  14. ADD . /src  
  15.  
  16. # Expose  
  17. EXPOSE  5000 
  18.  
  19. # Run  
  20. CMD ["python""/src/application.py"]  

Docker化階段 2 :在本地測試

雖然這個應用程序需要一個DynamoDB表和SNS主題來完成全部功能,不過我可以但沒有測試它們: 

首先, 構(gòu)建 Docker 鏡像:

  1. $> docker build -t eb-py-sample . 

最后 (直接到可以使用后!),通過構(gòu)建好的image運行一個container (映射 container 的5000端口到主機的8080端口, 并且按照下面的代碼設(shè)置一些環(huán)境變量):

  1. $> docker run -d \  
  2.      -e APP_CONFIG=application.config.example \  
  3.      -e AWS_ACCESS_KEY_ID=$AWS_ACCESS_KEY_ID \  
  4.      -e AWS_SECRET_ACCESS_KEY=$AWS_SECRET_ACCESS_KEY \  
  5.      -p 8080:5000 \  
  6.      eb-py-sample  

在 OS X上,我打開 http://localhost:8080鏈接,下圖顯示的就是我的一個應用程序!

 

邊欄:我們使用-e選項來傳遞一些選項: 

  1. APP_CONFIG: 這個程序使用這個選項加載指向)它的配置文件. 默認我們指定一個默認的配置文件。 你可以創(chuàng)建一個 DynamoDB 表和SNS 主題并且將他們添加到這個配置文件中,以使你的應用程序在本地開發(fā)的時候可以更完美的工作。
  2. AWS_ACCESS_KEY_ID 和 AWS_SECRET_ACCESS_KEY: 這個應用程序使用 Boto 來連接 DynamoDB 和SNS, 并且 Boto 使用這些環(huán)境變量來認證請求以上服務(wù)。這些設(shè)置僅僅是為了本地開發(fā)。 當我們向 Elastic Beanstalk 部署時將使用統(tǒng)一身份和訪問控制方案(IAM) 角色(Roles)。

Docker 化階段 3: 修改  .ebextensions

我們的應用程序擁有一個特殊的文件夾 .ebextensions,里面有個 setup.config 文件。我們使用這個文件通知來 Elastic Beanstalk 創(chuàng)建我們程序所需要的 DynamoDB 表和 SNS 主題, 同時他會創(chuàng)建一個配置文件   /var/app/app.config  ,這個文件包含了我們剛才創(chuàng)建的 DynamoDB 表和 SNS 主題的名字。

這個文件中還有一些特殊的地方是他擁有特殊的在 Elastic Beanstalk(相對于 Docker)中的 Python的環(huán)境類型(python版本?) ,我們需要把他們移除掉:

修改 files 的成員,并且移除掉 owner 和 group 鍵,使他看起來像下面的這些:

  1. files:  
  2.   "/var/app/app.config":  
  3.     mode: "000444" 
  4.     content: |  
  5.       AWS_REGION = '`{ "Ref" : "AWS::Region"}`' 
  6.       STARTUP_SIGNUP_TABLE = '`{ "Ref" : "StartupSignupsTable"}`' 
  7.       NEW_SIGNUP_TOPIC = '`{ "Ref" : "NewSignupTopic"}`' 

修改 option_settings ,刪除靜態(tài)文件映射。使他看起來像下面的這些:

  1. option_settings:  
  2.   "aws:elasticbeanstalk:customoption":  
  3.      "AlarmEmail" : "nobody@amazon.com" 
  4.   "aws:elasticbeanstalk:application:environment":  
  5.     "APP_CONFIG""/var/app/app.config" 
  6.     "FLASK_DEBUG""false" 
  7.     "THEME""flatly" 

檢查一下setup.config文件,確認前面的所有變化是否正確,或者可以參考托管在GitHub上的setup.config

Docker化階段4: 部署到Elastic Beanstalk

我已經(jīng)建立并測試了我的本地容器,移除了一些.ebextensions,它是特定的Elastic Beanstalk Python環(huán)境,我已經(jīng)信心滿滿地準備部署它了!

我創(chuàng)建了一個文件,名字叫做Dockerrun.aws.json,與此類似,我創(chuàng)建了Dockerfile。這個文件將會告訴Elastic Beanstalk 怎么去運行Docker容器并且它看起來像是這樣的(這個文件的詳細信息,請參閱下方)。

  1. {  
  2.   "AWSEBDockerrunVersion""1",  
  3.   "Volumes": [  
  4.     {  
  5.       "ContainerDirectory""/var/app",  
  6.       "HostDirectory""/var/app" 
  7.     }  
  8.   ],  
  9.   "Logging""/var/eb_log" 
  10. }  

關(guān)于Dockerrun.aws.json

Volumes成員將會在EC2上映射/var/app實例到容器上的/var/app。Docker容器通過訪問app.config文件并通過創(chuàng)建.ebextensions/setup.config得以讓app在容器上運行。Logging成員告訴Elastic Beanstalk我們的Docker app將會記錄日志到/var/eb_log到容器中。在控制臺里,無論什么時候你點擊Snapshot Logs或者如果你啟用自動日志輪轉(zhuǎn),Beanstalk將會自動推送日志/var/eb_log到這個目錄。

我將提交我的修改,并且使用 git archive 來生成一個zip文件以便部署到Elastic Beanstalk上(你可以使用zip工具、Finder或Windows 資源管理器來打包):

  1. $> git add Docker* && git commit -am "Dockerized"  
  2. $> git archive --format=zip HEAD > eb-py-flask-signup.zip  

之后,我通過 Elastic Beanstalk Management Console 來部署生成后的zip包

當我的環(huán)境通過之后,我可以訪問它,確保它可以正常工作:

 

我還保存了環(huán)境日志的快照:

[[113292]]

由于我之前往Dockerrun.aws.json文件中添加了Logging 成員,所以,容器中輸出到/var/eb_log中的日志可以被定向到S3,并且我可以在瀏覽器中訪問它們:

 

接下來

在下一篇文章中,我將會使用 eb 命令行工具直接在命令行中部署這個Dockerized程序,不需要瀏覽器或管理控制臺!

相關(guān)資源

英文原文:Dockerizing a Python Web App

譯文鏈接:http://www.oschina.net/translate/dockerizing-a-python-web-app

責任編輯:林師授 來源: 開源中國社區(qū) 編譯
相關(guān)推薦

2014-11-25 14:04:59

DockerDocker Nodeweb應用部署

2015-02-06 11:04:10

DockerAWS移動應用開發(fā)測試

2023-05-10 08:05:41

GoWeb應用

2021-07-31 12:58:53

PodmanLinux虛擬機

2014-10-15 11:01:02

Web應用測試應用

2009-02-03 10:19:45

2011-05-18 16:02:08

XML

2021-09-12 12:00:12

瀏覽器LinuxWeb 應用

2020-10-11 20:54:39

Python開發(fā)Docker

2020-11-20 10:50:01

Docker容器

2011-03-10 10:45:47

Azure“Hello Worl

2021-08-28 10:06:29

VueJavascript應用

2017-06-08 15:53:38

PythonWeb框架

2013-05-13 09:31:29

Web App開發(fā)WebApp

2023-09-15 10:10:05

R 語言

2011-11-21 18:19:20

Web iMC

2015-01-20 13:46:31

Java EEDockerDocker部署

2021-07-30 20:25:04

pipxPython編程語言

2020-09-29 07:24:14

Python字典數(shù)據(jù)

2022-02-10 22:34:51

對象JVM收集器
點贊
收藏

51CTO技術(shù)棧公眾號

久久久久免费看| www.99r| 青青草视频免费在线观看| 久久精品官网| 久久精品国产清自在天天线| aaaaa黄色片| 一区二区三区电影大全| 中文字幕色av一区二区三区| 国产欧美在线一区二区| 中文字幕日本人妻久久久免费| 亚洲精品电影| 亚洲欧美日韩天堂一区二区| 久久无码人妻一区二区三区| 深夜福利视频一区二区| 最近中文字幕一区二区三区| 鲁丝片一区二区三区| 国产精品无码天天爽视频| 国产精品亚洲综合久久| 久久精品久久久久电影| 六月婷婷七月丁香| 97久久亚洲| 欧美乱熟臀69xxxxxx| 欧美 日韩 亚洲 一区| 含羞草www国产在线视频| 26uuu精品一区二区三区四区在线 26uuu精品一区二区在线观看 | 亚洲图区在线| 欧美tickling网站挠脚心| 亚洲少妇久久久| 在线最新版中文在线| 一区二区三区欧美久久| 永久免费精品视频网站| 九色蝌蚪在线| 91在线小视频| 国产精品18毛片一区二区| 一区二区三区精彩视频| 久久婷婷麻豆| 91精品国产乱码久久久久久蜜臀 | 天涯成人国产亚洲精品一区av| www亚洲国产| av网站在线免费观看| 91丨国产丨九色丨pron| 国产在线欧美日韩| 丁香六月色婷婷| 国产成人免费视| 91夜夜揉人人捏人人添红杏| 中文天堂在线资源| 日韩va欧美va亚洲va久久| 51精品国产黑色丝袜高跟鞋| 久草成人在线视频| 欧美黄色一区二区| 久久精品一区中文字幕| 青青操在线播放| 日韩av大片| 中日韩美女免费视频网址在线观看| www.男人天堂| 奇米影视777在线欧美电影观看| 日韩精品一区二区三区在线播放 | 亚洲精品乱码久久久久久自慰| 51精品视频| 亚洲成a人片在线观看中文| 欧美国产综合在线| 91九色porn在线资源| 舔着乳尖日韩一区| 日韩中文字幕二区| 欧美日韩精品免费观看视欧美高清免费大片| 欧美午夜女人视频在线| 国产福利一区视频| 欧美美女被草| 日韩欧美在线综合网| 星空大象在线观看免费播放| 一区三区在线欧| 在线视频中文亚洲| 潘金莲一级黄色片| 欧美激情一级片一区二区| 国内精品免费午夜毛片| 四虎精品永久在线| 美腿丝袜在线亚洲一区| 2014国产精品| 天堂在线一二区| 国产日韩欧美a| 自拍偷拍亚洲色图欧美| 女同一区二区免费aⅴ| 欧美日韩国产精品专区| 亚洲精品午夜在线观看| 亚洲视频一起| 亚洲欧美一区二区三区四区| 日韩欧美视频免费观看| 亚洲无线视频| 日韩av手机在线观看| 999av视频| 91视频com| av动漫免费观看| 极品视频在线| 欧美精品在线一区二区| 完美搭档在线观看| 日韩欧美二区| 26uuu国产精品视频| 中文字幕 自拍偷拍| 国产精品911| 日韩av高清| 亚洲91av| 欧美性xxxxxx少妇| 久草免费资源站| 日本不卡免费一区| 国内精品一区二区三区四区| 中文字幕二区三区| 99精品久久只有精品| 欧美精品久久96人妻无码| 亚洲精品动漫| 日韩精品中文字幕一区二区三区| 国产成人福利在线| 中文字幕一区二区三区乱码图片| 日本精品视频网站| 日本成人动漫在线观看| 国产精品国产三级国产aⅴ入口 | 澳门成人av网| 日韩女优av电影| 污污视频网站在线免费观看| 一本久久综合| 国产 高清 精品 在线 a| 91在线网址| 日韩欧美在线视频| 欧美xxxxx精品| 亚洲欧美综合| 成人久久久久爱| 成人一区二区不卡免费| 色综合天天在线| 免费啪视频在线观看| 最新精品国产| 国产综合久久久久| 视频一区二区三区不卡| 91成人免费电影| 最新中文字幕视频| 亚洲自啪免费| 精品999在线观看| 91www在线| 精品国产百合女同互慰| 久久99久久久| 成人亚洲精品久久久久软件| 成年丰满熟妇午夜免费视频 | 日韩精品一卡二卡三卡四卡无卡| 精品欧美国产| 国产污视频在线播放| 亚洲丁香久久久| 色婷婷在线观看视频| 成人美女视频在线看| 激情五月六月婷婷| 91精品国产自产在线丝袜啪| 九九精品在线播放| 丰满人妻一区二区| 午夜精品久久久久久久| 国产性生活毛片| 国产日韩专区| 欧洲一区二区日韩在线视频观看免费 | 视频二区在线| 日韩欧美精品网站| www.99热| 国产在线一区观看| 91传媒免费视频| 久久中文资源| 秋霞成人午夜鲁丝一区二区三区| 国产专区在线播放| 欧美日本国产一区| 激情五月少妇a| 成人深夜福利app| av观看免费在线| 精品国产一区二区三区av片| 国产热re99久久6国产精品| 黄色视屏免费在线观看| 日韩欧美一二区| 国产福利拍拍拍| 国产午夜精品一区二区三区视频| 黄色一级免费大片| 99久久婷婷国产综合精品电影√| 亚洲伊人久久大香线蕉av| 波多野结依一区| 亚洲人成在线观看网站高清| 亚洲天堂中文字幕在线| 一区二区理论电影在线观看| 影音先锋人妻啪啪av资源网站| 久久综合五月| 中文字幕精品在线播放| 欧美调教视频| 国产精品免费福利| 国精一区二区三区| 亚洲网站视频福利| 成 人 黄 色 片 在线播放| 欧美视频在线观看免费| www.av免费| 99久久国产综合色|国产精品| 国产又大又黄又粗的视频| 欧美成人日韩| 日韩欧美视频第二区| 视频在线观看免费影院欧美meiju| 91高清免费在线观看| 久cao在线| 日韩精品视频在线免费观看| 97免费观看视频| 欧美日韩国产精品一区| 欧产日产国产v| 久久精品视频一区二区三区| 免费不卡av网站| 日本午夜精品视频在线观看 | 日韩一区精品字幕| www.av蜜桃| 久久久久久久久丰满| 欧美一卡2卡3卡4卡无卡免费观看水多多| a一区二区三区亚洲| 日本国产一区二区三区| 欧洲一区二区三区| 日韩中文字幕亚洲| 精品999视频| 亚洲精品久久久久| 亚洲AV无码成人片在线观看| 欧美视频你懂的| 久久精品视频7| 亚洲国产日韩精品| √天堂中文官网8在线| 国产亚洲va综合人人澡精品| 国产免费a级片| 国产一区二区在线观看免费| 五月天激情视频在线观看| 国产精品久久久久久模特| av网站大全免费| 亚洲精品国产偷自在线观看| 一本久久a久久精品vr综合| 美女久久久久| 久久久久高清| 欧美在线导航| 国产麻豆日韩| 超碰成人福利| av观看久久| 精品国产一级| 91久久精品国产91久久性色| 国产成人精选| 国产日产久久高清欧美一区| 播放一区二区| 国产精品自拍网| 高清亚洲高清| 国产欧美精品一区二区三区介绍| 日本成人福利| 国产精品视频精品| 国产成人精品一区二区三区视频| 国产精品91视频| 巨胸喷奶水www久久久免费动漫| 国产不卡精品视男人的天堂 | 91在线中文字幕| 99视频这里有精品| 91精品国产99久久久久久红楼| 国产一区二区| 97se视频在线观看| 中文在线综合| 国产午夜精品一区| 欧亚精品一区| 日韩视频专区| 99久久99热这里只有精品 | 天堂av资源在线观看| 欧美黑人性猛交| av中文字幕在线观看第一页| 538国产精品一区二区免费视频| 依依综合在线| 国产日韩欧美影视| 久久伊人影院| 含羞草久久爱69一区| 少妇精品久久久| 一区二区不卡视频| 欧美日韩国产精品一区二区亚洲| www.av毛片| 老牛国产精品一区的观看方式| 91插插插插插插插插| 国产一区二区在线观看免费| av av在线| 国产清纯在线一区二区www| а天堂中文在线资源| 亚洲国产视频在线| 国产一级淫片a视频免费观看| 欧美人与z0zoxxxx视频| 亚洲成人一级片| 亚洲欧洲日本专区| 快射av在线播放一区| 国内精品久久久久影院 日本资源 国内精品久久久久伊人av | 国产人妖一区二区三区| 亚洲福利精品在线| yiren22亚洲综合伊人22| 久久国产精品免费视频| 欧美日韩国产观看视频| 国产精品一区二区三| 国产成人一二| 日韩av高清| 一区在线播放| 色婷婷综合久久久久中文字幕 | 性欧美一区二区| 亚洲激情在线播放| jizz国产在线| 欧美精品一区二区三区蜜臀| 成年人在线观看网站| 欧美黑人性生活视频| 欧美伊人亚洲伊人色综合动图| 亚洲精品欧美日韩专区| 国产va免费精品观看精品视频 | 538在线观看| 成人激情视频在线| 曰本一区二区三区视频| 日本一级黄视频| 蜜臀久久99精品久久久久久9| 亚洲精品乱码久久久久久蜜桃图片| 国产精品乱码久久久久久| 日韩欧美三级在线观看| 欧美一区二区三区喷汁尤物| 国产色在线 com| 91av福利视频| 亚洲天堂中文字幕在线观看| 一区二区视频在线观看| 久久精品亚洲| 欧美一区二区免费在线观看| 中文字幕日韩一区| 久草视频在线免费| 精品视频在线播放| 91超碰在线免费| αv一区二区三区| 我不卡伦不卡影院| 色播五月综合网| 国产色婷婷亚洲99精品小说| 九九精品免费视频| 亚洲护士老师的毛茸茸最新章节| 欧洲一区二区三区| 波多野结衣久草一区| 欧美日韩精选| 伦伦影院午夜理论片| 自拍偷拍欧美激情| 97精品久久人人爽人人爽| 色偷偷综合社区| 香蕉成人影院| 色视频一区二区三区| 天堂一区二区在线| 精品人伦一区二区三电影| 欧美性猛交xxxx乱大交蜜桃| 五月婷婷深深爱| 午夜精品一区二区三区在线播放| gogo久久日韩裸体艺术| 久久综合亚洲精品| 成人一级片在线观看| 久久精品视频8| 日韩电影网在线| 国产网站在线| 欧美日韩中文国产一区发布| 久久久久国产精品一区三寸| 熟女少妇内射日韩亚洲| 在线区一区二视频| 在线a免费看| 国产日韩在线观看av| 1024精品久久久久久久久| 999热精品视频| 亚洲影院久久精品| 香蕉视频黄色片| 国产a∨精品一区二区三区不卡| 国产精品嫩模av在线| 天堂网在线免费观看| 综合久久一区二区三区| 懂色av蜜臀av粉嫩av分享吧| 97视频免费在线看| 激情综合网站| 911av视频| 午夜电影一区二区三区| 欧美色综合一区二区三区| 国产精品入口免费视| 在线一区电影| 黄色免费看视频| 在线一区二区三区四区五区| av在线电影院| 99re在线国产| 免播放器亚洲| 欧美一区二区三区观看| 精品免费一区二区三区| 日本黄色免费在线| 亚洲综合网中心| 成人性视频网站| 中文字幕av片| 欧美激情第99页| 韩日一区二区三区| 超碰人人cao| 日韩欧美国产成人| 国产素人视频在线观看| 精品中文字幕一区| 国产中文字幕精品| 9i看片成人免费看片| 欧美成人激情图片网| 综合伊思人在钱三区| 亚洲制服在线观看| 色哦色哦哦色天天综合| 色呦呦网站在线观看| 日韩色妇久久av| 99久久精品国产毛片| 国产一区二区在线不卡| 欧美一区在线直播| 亚洲精品网址| 国产三级短视频| 亚洲国产又黄又爽女人高潮的| 亚洲高清国产拍精品26u| 国产免费黄色av|