Linux Docker docker-compose 部署python脚本

安装pipreqs 生成requirements.txt

参考文章: Python学习笔记(三)生成requirements.txt文件

python 复制代码
pip install pipreqs

然后,在终端输入以下命令

python 复制代码
pipreqs ./

(问题1)当项目所在文件夹中已有requirement.txt时,会提示

python 复制代码
WARNING: requirements.txt already exists, use --force to overwrite it

这时需要将输入代码改为以下,即可更新已经存在的requirement.txt文件了。

python 复制代码
pipreqs --force ./

项目要有main文件作为入口,不然同级别目录工具类读取不到


docker-compose.yml

yml 复制代码
version: '3.8'

services:
  cross_border_etf:
    # 使用官方Python 3.9镜像
    image: python:3.9-slim
    # 容器名称(可选)
    container_name: my_cross_border_etf
    # 将宿主机项目目录挂载到容器内
    volumes:
      - /opt/python/stock-python:/app
    # 工作目录设置为容器内的项目目录
    working_dir: /app
    # 安装依赖(如果有requirements.txt)
    command: >
      sh -c "pip install --no-cache-dir -r /app/requirements.txt &&
             python /app/strategy/CrossBorderETF.py"
    # 环境变量(可选,根据项目需要添加)
    environment:
      - PYTHONUNBUFFERED=1  # 确保日志实时输出
      - TZ=Asia/Shanghai    # 设置时区为上海
    # 重启策略(可选)
    restart: unless-stopped
    # 网络设置(默认使用桥接网络,如需自定义可添加)
    # networks:
    #   - stock-network

#docker-compose up -d
# docker exec -it  my_cross_border_etf bash

update.sh

python 复制代码
#!/bin/bash

# 移除名为my_cross_border_etf的容器
echo "正在停止容器 my_cross_border_etf..."
docker stop my_cross_border_etf

echo "等待容器停止完成..."
sleep 5

echo "正在移除容器 my_cross_border_etf..."
docker rm my_cross_border_etf

echo "等待容器移除完成..."
sleep 5

echo "启动docker-compose服务..."
docker-compose up -d

echo "等待服务启动..."
sleep 15

echo "正在查看容器 my_cross_border_etf 日志..."
docker logs -f my_cross_border_etf
相关推荐
用户03321266636735 分钟前
使用 Python 从零创建 Word 文档
python
Csvn5 小时前
Python 两大经典坑点 —— 可变默认参数 & 闭包延迟绑定
后端·python
曲幽6 小时前
别再用网页翻译看源码了!你的私人翻译神器LibreTranslate,部署避坑指南来了
python·docker·web·pot·translate·libretranslate·arogstranslate
用户556918817538 小时前
#从脚本到独立程序:Python + Playwright 批量抓取的完整踩坑记录
python·自动化运维
兵慌码乱1 天前
基于 MediaPipe 与 PySide2 的手势交互音乐控制系统实现:轻量化视觉交互全流程解析
python·opencv·计算机视觉·人机交互·手势识别·mediapipe·pyside2
luckdewei1 天前
FastAPI 资产管理系统实战:复杂 ORM 关联、Alembic 迁移与 N+1 查询优化
python
aqi001 天前
15天学会AI应用开发(八)使用向量数据库实现RAG功能
人工智能·python·大模型·ai编程·ai应用
Csvn1 天前
`functools.lru_cache` —— 一行代码搞定缓存加速
后端·python
zzzzzz3101 天前
9K Star 炸裂开源!这个 C 语言写的代码知识图谱,把 Linux 内核索引压缩到了 3 分钟
linux·服务器·sql