Dockerfile07 -- Dockerfile构建python

Posted FikL-09-19

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Dockerfile07 -- Dockerfile构建python相关的知识,希望对你有一定的参考价值。

文章目录

一、Dockerfile搭建python

# 1、创建python目录
# 2、编写Dockerfile python文件
# 3、访问测试

1、创建python目录

[root@ccse ~]# mkdir  python
[root@ccse ~]# cd python/

2、编写dockerfile文件

 # 1、编写Dockerfile文件
[root@ccse ~/python]# vim Dockerfile
FROM centos:7
RUN curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo
RUN curl -o /etc/yum.repos.d/epel.repo https://mirrors.aliyun.com/repo/epel-7.repo
RUN yum makecache fast;
RUN yum install python3-devel python3-pip -y
RUN pip3 install -i https://pypi.douban.com/simple flask
COPY app.py /opt
WORKDIR /opt
EXPOSE 8080
CMD ["python3","app.py"]

# 2、准备文件
[root@ccse ~/python]# vim app.py 
# coding:utf8
from flask import Flask
app=Flask(__name__)
@app.route('/')
def hello():
    return 'hello docker, i am mm'
if __name__=='__main__':
    app.run(host='0.0.0.0',port=8080)
    
# 3、查看
[root@ccse ~/python]# ll
total 8
-rw-r--r-- 1 root root 344 Dec  3 14:57 Dockerfile
-rw-r--r-- 1 root root 184 Dec  3 14:51 app.py
# 4、构建镜像
[root@ccse ~/python]# docker build -t mm_python .
Successfully built 04bb727cf38e
Successfully tagged mm_python:latest
# 5、启动容器
[root@ccse ~/python]# docker run -d --name my_python -p 8080:8080 mm_python
63353ec19497d524efe7f206ae306bdd94cdd39fbc9d75a69aa7dcdf0c414b3e
# 6、访问宿主机,查看容器内flask web网站
http://120.46.132.244:8080/
hello docker,i am mm

3、修改网站内容

# 1、修改宿主机的代码,以及dockerfile,重新构建
# 2、进入容器内修改代码,重新容器

[root@ccse ~/python]# docker ps
CONTAINER ID   IMAGE              COMMAND                  CREATED         STATUS         PORTS                                       NAMES
154cde37e3cf   046b995dda29       "python3 app.py"         6 minutes ago   Up 6 minutes   0.0.0.0:8080->8080/tcp, :::8080->8080/tcp   xenodochial_proskuriakova
[root@ccse ~/python]# docker exec -it 154cde37e3cf bash
[root@154cde37e3cf opt]#  vi app.py 
 return 'hello mm'
[root@ccse ~/python]# docker restart 154cde37e3cf
# 3、访问宿主机,查看容器内flask web网站
http://120.46.132.244:8080/
hello mm

以上是关于Dockerfile07 -- Dockerfile构建python的主要内容,如果未能解决你的问题,请参考以下文章

dockerfile构建nginx并结合php

dockerfile构建nginx并结合php

Docker——Dockerfile(构建自己的CentOS镜像和Tomcat镜像)并打包镜像发布上线

如何配置 com.spotify.dockerfile-maven-plugin 在 Docker Toolbox 上运行?

docker-compose 目录构建路径

Docker-compose实战之搭建LAMP环境