资讯专栏INFORMATION COLUMN

5秒钟教别人用Docker布署1个Python运用

89542767 / 386人阅读

  Docker是1个开源软件,为开发者和网站管理员提供一个开发者平台,能将应用软件搭建、装包为轻巧器皿,并在任何时候运作,接下来本文关键为大家介绍了对于如何依据5秒钟教别人用Docker布署1个Python运用,必须的小伙伴可以借鉴一下


  序言


  应用传统式物理机或云主机上部署项目都存在着某些困扰


  例如:项目部署速度比较慢、资源浪费现象、转移难且拓展低


  而采用Docker部署项目的优点包括:


  高效率运用服务器资源


  服务启动迅速


  自然环境相同,转移方便快捷


  本文将详细介绍Docker布署1个Python工程项目的基本步骤


  1.Dockerfile软件更新


  Dockerfile是1个放置于新项目目录下的软件更新,可以借助Docker命令依据该文档建立一个镜像系统


  常见的命令包括:


  FROM


  用以界定基础镜像


  MAINTAINER


  特定管理者信息内容,能够省去不会写


  RUN


  和「组装命令」连接起来,适合于焊接工具架包


  ADD


  将服务器之间文件,然后进行缓解压力


  COPY


  和ADD命令作用相同,但不会开展缓解压力实际操作


  WORKDIR


  用以转换工作目录


  VOLUME


  配备服务器之间与容器文件目录投射


  EXPOSE


  配备容器中新项目对外开放可能存在的服务器端口


  CMD


  特定器皿启动时,运转的命令


  例如,能够运作某一命令启动项目


  2.实战演练一下


  应用Docker部署应用的基本过程是:


  开发规划并本地测试依据


  撰写Dockerfile摆放到新项目网站根目录


  装包系统镜像


  运作镜像系统器皿


  检测


  为了能操作便捷,这儿以简单的Flask项目为例进行介绍


  2-1项目实施


  fromflaskimportFlask
  #组装依靠
  #pip3install-Uflask
  app=Flask(__name__)
  app.route('/')
  defindex():
  return"检测器皿布署!"
  if__name__=='__main__':
  app.run(host='0.0.0.0',port=8888)
  #浏览器访问检测
  #http://127.0.0.1:8888/

  项目实施完成,并在本地测试依据后就可以撰写Dockerfile文件了


  2-2撰写Dockerfile


  在项目目录下,创建一个Dockerfile文件,应用上面的命令撰写描述脚本


  需要注意的是,这儿应用「EXPOSE」命令可能存在的服务器端口与入口文档定义的服务器端口保持一致


  #Dockerfile
  FROMcentos:7.9.2009
  RUNyummakecachefast;
  RUNyuminstallpython3-develpython3-pip-y
  RUNpip3install-ihttps://pypi.douban.com/simpleflask
  COPYmain.py/opt
  WORKDIR/opt
  EXPOSE8888
  CMD["python3","main.py"]


  2-3搭建镜像系统


  #在可执行程序下,依据Dockerfile文件建立一个镜像系统
  #镜像系统名字:xag/my_flask_web
  #--no-cache:不能使用老旧的缓存文件开展镜像系统搭建
  dockerbuild--no-cache-t"xag/my_flask_web".


  2-4运作镜像系统器皿


  使用dockerrun命令依据镜像系统运作1个器皿


  在其中


  -d:意味着器皿在后台程序,并不是依据前台接待运作


  –name:用以实行容器别称


  -p:用以配备服务器之间与容器端口转发


  #-d:后台程序
  #服务器之间(9999)投射容器中的8888(上边Dockerfile早已暴露出8888端口号)
  dockerrun-d--nameflask_web-p9999:8888xag/my_flask_web

  2-5测一下


  在最后用浏览器中,依据服务器之间可能存在的服务器端口9999浏览项目了


  访问地址:http://127.0.0.1:9999/


  3.汇总


  文中以简单的Web新项目讲述了运用Docker部署项目的基本步骤


  事实上,Dockerfile十分的灵便,它还提供了ARG/ENV配置环境变量,VOlUME命令初始化文件目录,ENTRYPO


  综上所述,这篇文章就给大家介绍到这里了,希望可以给大家带来帮助。

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/129027.html

相关文章

  • 一文您如何通过 Docker 快速搭建各种测试环境(Mysql, Redis, Elasticse

    摘要:本文主要说说如何配置阿里云的镜像加速器。通过修改配置文件来使用加速器执行下面命令验证一下速度以下载为例,看下速度下载配置了加速器过后,速度终于飚起来了。二快速安装搭建环境本节中,我们将学习如何通过快速安装与搭建环境。 欢迎关注个人微信公众号: 小哈学Java, 优质文章第一时间推送哟!! 个人网站: www.exception.site 小哈今天给大家分享的主题是,如何通过 Docker ...

    FleyX 评论0 收藏0
  • 蠎周刊 2015 年度最赞

    摘要:蠎周刊年度最赞亲俺们又来回顾又一个伟大的年份儿包去年最受欢迎的文章和项目如果你错过了几期就这一期不会丢失最好的嗯哼还为你和你的准备了一批纪念裇从这儿获取任何时候如果想分享好物给大家在这儿提交喜欢我们收集的任何意见建议通过来吧原文 Title: 蠎周刊 2015 年度最赞Date: 2016-01-09 Tags: Weekly,Pycoder,Zh Slug: issue-198-to...

    young.li 评论0 收藏0
  • 手把手你搭APM之Skywalking搭建指南(支持Java/C#/Node.js)

    摘要:通过跟踪请求的处理过程,来对应用系统在前后端处理服务端调用的性能消耗进行跟踪,关于的介绍可以看这个链接,大规模分布式系统的跟踪系统作者刀把五链接来源知乎著作权归作者所有。 手把手教你搭APM之Skywalking 前言 什么是APM?全称:Application Performance Management 可以参考这里: 现代APM体系,基本都是参考Google的Dapper(大规模...

    ingood 评论0 收藏0
  • Docker打包nodejs项目和数据库

    摘要:你需要新建目录结构初始化的语句如下你的用户名你的镜像这回直接拉取你在上的镜像去掉构建步骤压缩给别人使用命令一键运行数据库项目舒服了 看这篇文章,必须知道基础的docker, 本文只提供思路和部分代码, 不负责教 所有的命令必须谨慎操作!三思而后行 命令 停止所有运行的容器 docker stop $(docker ps -a -q) 删除所有的容器 docker rm $(docker...

    SimonMa 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<