准备开发环境
docker pull python:3.10
pip install matplotlib -i http://mirrors.aliyun.com/pypi/simple/ --trusted-host mirrors.aliyun.com
导出pip list下面的依赖包
pip freeze > requirements.txt
编写Dockfile文件
在docker_test同目录下创建Dockfile文件,格式如下:
# 基于的基础镜像
FROM python:3.9.6
# 维护者信息
MAINTAINER name chy@163.com
# 将docker_test目录下的代码添加到镜像中的code文件夹(两个目录参数中间有空格分开)
ADD ./docker_test /code
# 设置code文件夹是工作目录
WORKDIR /code
# 安装支持
RUN pip install -r requirements.txt
#docker运行时即运行app.py文件
CMD ["python","/code/app.py"]
构建命令
$ docker build -t myimage .
docker run 命令
docker run [OPTIONS] IMAGE [COMMAND] [ARG…]
常用的OPTIONS:
-it:相当于-i -t,这两个参数的作用是,为该docker创建一个伪终端,这样就可以进入到容器的交互模式(也就是直接进入到容器里面)
-d:后台运行容器
--rm:运行完就删除容器
--name:指定容器名称
-v:目录挂载
$ docker run -it -v ${PWD}/work:/home myimage/bin/bash
or
$ docker run -d -v ${PWD}/out:/out myimage
其他命令
# list images
$docker images ls
# delete image
$docker rmi -f b343f542d42e