Docker容器化部署Python应用过程解析

 更新时间:2020年11月26日 11:05:43   作者:-零  
这篇文章主要介绍了Docker容器化部署Python应用过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

简单应用部署

一、目录结构:

└── Pythonpro #目录
  └── test.py #文件
  └── requirements.txt #文件
  └── Dockerfile #文件

二、编写Dockerfile文件

# 基于镜像基础
FROM python:3.6.4
# 创建代码文件夹工作目录 /code
RUN mkdir /code
# 复制当前代码文件到容器中 /code
COPY . /code
# 安装所需的包
RUN pip install -r /code/requirements.txt -i https://pypi.douban.com/simple
# 指定cmd的工作目录 /code
WORKDIR /code
#容器启动时执行的命令
CMD ["python","test.py"]

三、创建容器镜像

docker bulid -t test .

四、运行容器

docker run -it --name test --restart always --privileged=true python-test
--name:指定容器的名字为python-test,test是刚刚构建的镜像。

--restart:always 容器退出时总是重启。

--privileged=true:执行容器内文件需要的权限。

Django应用容器化

一、目录结构,我这里假设这个目录存在于/home/Pythonpro。

└── Pythonpro #目录
└── manage.py #文件
└── 主项目 #目录
└── apps #目录
└── requirements.txt #文件
└── Dockerfile #文件
└── run.sh #文件

run.sh脚本

python /code/manage.py runserver 0.0.0.0:8000

二、编写Dockerfile文件

FROM python:3.6.4
RUN mkdir /code \
&&apt-get update \
&&apt-get -y install freetds-dev \
&&apt-get -y install unixodbc-dev
COPY . /code 
RUN pip install -r /code/requirements.txt -i https://pypi.douban.com/simple
WORKDIR /code
CMD ["/bin/bash","run.sh"]

三、构建镜像

docker bulid -t webtest .

四、运行容器

docker run -it -p 6500:8000 -v /home/Pythonpro:/code --name web --restart always --privileged=true webtest

-p:把容器的8000端口映射到宿主机6500

-v:主机的目录/home/Pythonprot映射到容器的目录/code

--name:指定容器的名字为web,webtest刚刚构建的镜像

--restart:always 容器退出时总是重启

--privileged=true:执行容器内文件需要的权限

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • Docker 部署 Prometheus的安装详细教程

    Docker 部署 Prometheus的安装详细教程

    这篇文章主要介绍了Docker 部署 Prometheus及安装方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-08-08
  • 详解Docker Swarm服务发现和负载均衡原理

    详解Docker Swarm服务发现和负载均衡原理

    这篇文章主要介绍了详解Docker Swarm服务发现和负载均衡原理,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-05-05
  • 详解用Docker快速搭建一个博客网站

    详解用Docker快速搭建一个博客网站

    本文主要介绍了用Docker快速搭建一个博客网站,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-11-11
  • Docker Nginx Log 三者的处理详解

    Docker Nginx Log 三者的处理详解

    这篇文章主要介绍了Docker Nginx Log 三者的处理详解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-11-11
  • docker部署nexus并启用https方式

    docker部署nexus并启用https方式

    这篇文章主要介绍了docker部署nexus并启用https方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-08-08
  • Docker安装Nginx并部署及MySQL容器构建全过程

    Docker安装Nginx并部署及MySQL容器构建全过程

    众所周知Docker是一种容器化技术,可以用来快速部署和管理应用程序,这篇文章主要给大家介绍了关于Docker安装Nginx并部署及MySQL容器构建的相关资料,需要的朋友可以参考下
    2024-02-02
  • win7下docker安装与报错问题的解决方法

    win7下docker安装与报错问题的解决方法

    这篇文章主要为大家详细介绍了win7下docker安装与报错问题的解决方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-06-06
  • Docker 私有仓库恢复实例详解

    Docker 私有仓库恢复实例详解

    这篇文章主要介绍了Docker 私有仓库恢复实例详解的相关资料,这里提供了详细的实现步骤,及注意事项,完成docker私有仓库的恢复,需要的朋友可以参考下
    2016-11-11
  • Docker容器不识别宋体等字体的解决方案

    Docker容器不识别宋体等字体的解决方案

    这篇文章主要介绍了Docker容器不识别宋体等字体的解决方案,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-03-03
  • docker启动mysql及-e MYSQL_ROOT_PASSWORD=my-secret-pw问题解决

    docker启动mysql及-e MYSQL_ROOT_PASSWORD=my-secret-pw问题解决

    本文主要介绍了docker启动mysql及-e MYSQL_ROOT_PASSWORD=my-secret-pw问题解决,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-07-07

最新评论