Dockerfile && docker-compose

1、Dockerfile

使用官方的Python作为基础镜像

FROM python:3.9

设置工作目录

WORKDIR /app

复制当前目录下的所有文件到容器的工作目录中

COPY . /app

安装所需的Python库

#RUN pip install --no-cache-dir -r requirements.txt

复制 requirements.txt 并安装依赖

COPY requirements.txt requirements.txt

RUN pip install --upgrade pip

RUN pip install -i https://pypi.tuna.tsinghua.edu.cn/simple --no-cache-dir -r requirements.txt

使端口80可供此容器外的环境使用

EXPOSE 9980

定义环境变量

ENV NAME World

设置容器启动时执行的命令

CMD ["python", "app.py"]

2、docker-compose.yml

version: '3'

services:

python-app:

build: .

ports:

  • "9980:9980"

volumes:

  • E:\docker-container\python3.8\application:/app

执行 docker-compose up --build

创建test.py

test.py

with open('/host/app/test.txt', 'w') as f:

f.write('Hello, Docker!')

$ python test.py 或 docker exec -it <container_id> python /app/your_script.py

相关推荐
feVA LTYR22 分钟前
Windows上安装Go并配置环境变量(图文步骤)
开发语言·windows·golang
hhb_61842 分钟前
C#高性能异步编程实战与底层原理深度解析
开发语言·c#
雾岛听蓝1 小时前
Qt操作指南:状态栏、浮动窗口与对话框使用
开发语言·经验分享·笔记·qt
minji...1 小时前
Linux 线程同步与互斥(五) 日志,线程池
linux·运维·服务器·开发语言·c++·算法
兩尛2 小时前
c++面试常问2
开发语言·c++·面试
Rust研习社2 小时前
添加依赖库时的 features 是什么?优雅实现编译期条件编译与模块化开发
开发语言·后端·rust
Dillon Dong2 小时前
【系统运维】Docker版本冲突问题详解:从错误到解决方案
docker·容器
Tel199253080042 小时前
ENDAT2.2 协议信号转 SSI /BISS-C转换卡 ENDAT2.2 协议信号转DMC多摩川高速协议转换器 互转卡
c语言·开发语言·网络
Dillon Dong2 小时前
【系列主题】从 Docker 构建失败看依赖隔离:多阶段构建的“隐形陷阱”
运维·docker·容器