python文件部署docker,容器路径与系统路径映射
创建镜像(使用Dockerfile本地创建镜像)
1 代码内容:
import os
import argparsedef 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.11ADD . /codeWORKDIR /codeRUN 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!"