首页 > 编程语言 > 详细

Ubuntu环境的docker实践——python

时间:2020-04-22 14:30:33      阅读:65      评论:0      收藏:0      [点我收藏+]

创建运行python代码的Dockerfile

python代码的运行需要安装python环境,而提前将python环境封装在容器里面,可以提供比虚拟机更轻量级的部署成本。
此处以python3为例,描述通过容器运行python3代码的过程。基础容器为docker hub上的python容器
需要为待运行的python代码创建Dockerfile文件:

# 将python3官方容器作为基础容器,若是python2,则改为python:2
FROM python:3
# 设定工作目录
WORKDIR /usr/src/app
# 将python代码运行所需的包(package)放入requirements.txt,安装时切换成清华源。
COPY requirements.txt ./
RUN pip install --no-cache-dir -i https://pypi.tuna.tsinghua.edu.cn/simple -r requirements.txt
# 将python代码考入镜像
COPY apps /usr/src/app/

# 将hello.py改为需要运行的python文件名,运行容器时可以替换python文件
ENTRYPOINT ["python"]
CMD ["hello.py"]

在容器中运行简单的python代码

注意:由于用到了input,需要输入内容,因此运行容器的时候需要用到-it参数,否则会报EOFError: EOF when reaeding a line的错误。
技术分享图片

以上两个例子并不需要在requirement.txt中添加额外的包,下面的就需要了。

测试python 3和mysql数据库的连接

以python3的mysql数据库包为例,见下图。
技术分享图片
注意:cryptography如果没安装,我遇到了报 RuntimeError: cryptography is required for sha256_password or caching_sha2_p 的错误。

代码来源
数据库信息:容器部署的mysql,运行在网络dockerlamp_lamp上,修改代码来源中的数据库信息,数据库地址使用mysql的容器名,数据库使用TestDB测试(需提前建好),用户名和密码自定义
运行结果:
技术分享图片
在mysql容器中查看数据库表操作结果:
技术分享图片

Ubuntu环境的docker实践——python

原文:https://www.cnblogs.com/fjlinww/p/12747234.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!