前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >『中级篇』Dockerfile实战(19)

『中级篇』Dockerfile实战(19)

作者头像
IT架构圈
发布2018-06-27 14:11:29
4110
发布2018-06-27 14:11:29
举报
文章被收录于专栏:IT架构圈IT架构圈

如何从一个python程序打包成为image,然后上传到dockerhub,最后下载image,生成对应的container容器。走咱们一起走个流程下来。

python程序
  • 编写python程序
代码语言:javascript
复制
mkdir flask-hello-world
cd flask-hello-world/
vim app.py
代码语言:javascript
复制
from flask import Flask
app = Flask(__name__)
@app.route('/')
def hell():
        return "hello docker public attention:idig88"
if __name__=='__main__':
        app.run(port=8888)
  • 运行python程序
代码语言:javascript
复制
python app.py
代码语言:javascript
复制
#安装flask插件
sudo yum -y install epel-release
sudo yum -y install python-pip
pip install flask
python app.py
编写Dockerfile文件
代码语言:javascript
复制
vim Dockerfile
代码语言:javascript
复制
FROM python:2.7
LABEL maintainer="zhugeaming"
RUN mv /etc/apt/sources.list /etc/apt/sources.list.bak
RUN echo "deb http://mirrors.163.com/debian/ jessie main non-free contrib" >/etc/apt/sources.list
RUN echo "deb http://mirrors.163.com/debian/ jessie-proposed-updates main non-free contrib" >>/etc/apt/sources.list
RUN echo "deb-src http://mirrors.163.com/debian/ jessie main non-free contrib" >>/etc/apt/sources.list
RUN echo "deb-src http://mirrors.163.com/debian/ jessie-proposed-updates main non-free contrib" >>/etc/apt/sources.list
RUN apt-get update
RUN pip install flask
COPY app.py /app/
WORKDIR /app
EXPOSE 8888
CMD ["python","app.py"]
代码语言:javascript
复制
docker image ls
运行container
代码语言:javascript
复制
docker run zhugeaming/flask-hello-world
代码语言:javascript
复制
#后台运行
docker run -d zhugeaming/flask-hello-world

容器有2个一个是刚才执行,一个后台执行的,后台直接执行。不加入-d的已经退出了。

PS:本次就是做了个实战,通过四步

  1. 代码编写好
  2. 环境python环境
  3. 第三方依赖
  4. 执行命令
本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2018-06-21,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 编程坑太多 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • python程序
  • 编写Dockerfile文件
  • 运行container
相关产品与服务
容器镜像服务
容器镜像服务(Tencent Container Registry,TCR)为您提供安全独享、高性能的容器镜像托管分发服务。您可同时在全球多个地域创建独享实例,以实现容器镜像的就近拉取,降低拉取时间,节约带宽成本。TCR 提供细颗粒度的权限管理及访问控制,保障您的数据安全。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档