一、什么是Dockerfile?
- Dockerfile是一个用来构建镜像的文本文件,文件内容由一条条构建镜像所需要的指令组成
二、Dockerfile注意事项
- 指令大小写不敏感,但是为了区分最好习惯用大写
- Dockerfile非注释行第一行必须是FROM
- 记住在宿主机新建时文件名必须是Dockerfile ,无后缀
- Dockerfile指定一个专门的目录为工作空间
- 所有引入映射的文件必须在这个工作空间目录下
三、构建自己项目依赖的python镜像
本文只叙述python镜像构建过程及部分指令,其余指令详解可点击此处
步骤一:在宿主机拉取python官方基础镜像
官网
docker pull python:3.9.16-alpine #拉取镜像
docker images #搜索已安装镜像,查看是否安装成功
步骤二:打开pycharm终端,下载依赖
pip freeze > requirements.txt #后边的txt文件名可以自定义,敲完命令会发现已经导出该文件在你的项目根目录下
步骤三:在宿主机下新建目录,并创建Dockerfile、requirements.txt(把步骤二中的文件内容复制进来)文件
mkdir python #创建一个目录,自定义名称
cd python #进入该目录
===================================================================================
touch requirements.txt
vim requirements.txt #vim文件名,把步骤二中的依赖文件内容复制过来保存(如果是编辑不存在的文件名会在保存后直接创建)
===================================================================================
vim Dockerfile
#输入i切换模式
FROM python:3.9.16-alpine #基于这个基础镜像镜像构建镜像
WORKDIR /app #设置容器的工作空间目录,自定义名称
ADD ./requirements.txt /app #将宿主机的依赖包文件添加到镜像的工作目录里
RUN pip3 install -r requirements.txt #安装依赖包
CMD ["python3", "main.py"] #设置容器执行后自动执行的命令,这里main.py是我们自动化框架的执行入口
#然后点ESC,输入:wq退出
步骤四:继续在当前目录下输入以下命令
格式:docker build -t 自定义镜像名称:自定义标签名 Dockerfile所在目录
docker build -t python2023:new . #(因为我已经在Dockerfile目录了,所以用 .) 否则要用绝对路径
步骤五:验证
docker images #验证查看是否安装成功