创建镜像(使用Dockerfile本地创建镜像)
1 代码内容:
import os
import argparse
def create_file(directory, filename, content="This is a test file created by Python script."):
"""在指定目录创建文件"""
# 确认目录存在
os.makedirs(directory, exist_ok=True)
# 文件的完整路径
file_path = os.path.join(directory, filename)
# 写入内容到文件
with open(file_path, 'w') as f:
f.write(content)
print(f"文件已创建: {file_path}")
if __name__ == "__main__":
# 创建命令行参数解析器
parser = argparse.ArgumentParser(description='创建文件到指定目录')
parser.add_argument('--dir', type=str, default='/app/data', help='文件保存目录')
parser.add_argument('--filename', type=str, default='test.txt', help='文件名')
parser.add_argument('--content', type=str, default='This is a test file created by Python script.', help='文件内容')
# 解析命令行参数
args = parser.parse_args()
# 调用函数创建文件
create_file(args.dir, args.filename, args.content)
2 在当前目录终端,使用pip freeze > requirements.txt命令将项目依赖库进行导出。命令执行完成后会生成一个叫requirements.txt的文件
3 编写Dockerfile(无类型文件)
FROM python:3.11
ADD . /code
WORKDIR /code
RUN pip install -r requirements.txt -i https://mirrors.huaweicloud.com/repository/pypi/simple/
CMD ["python","./download.py"]
4 打开cmd终端,进入Python项目目录,运行docker build -t demo:v1 . 命令构建镜像,这里注意后面有一个 . (如果出现报错,记得检查网络环境,另一种可能是Dockerfile文件受损,可以重新生成再试试)
运行 Docker 容器并进行路径映射
运行 Docker 容器时,可以通过 -v 选项将主机目录和容器目录映射起来:
docker run -v D:/Temp:/app/data testpath:v1 python download.py --filename=example.txt --content="Hello, Docker!"