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
相关推荐
YongCheng_Liang12 分钟前
ELK 自动化部署脚本解析
linux·运维·elk·jenkins
小白博文13 分钟前
MobaXterm调用远程服务器(Linux)图形化界面应用
linux·运维·服务器
烤汉堡17 分钟前
Python入门到实战:网络请求与数据获取
python
rimoyee20 分钟前
[python探本] 内存数据存储机制
python
LiLiYuan.22 分钟前
Arrays类和List接口的关联
java·开发语言·windows·python
AI小云25 分钟前
【Numpy数据运算】Numpy速学手册
python·numpy
不会写代码的里奇28 分钟前
VMware Ubuntu 22.04 NAT模式下配置GitHub SSH完整教程(含踩坑实录+报错_成功信息对照)
linux·经验分享·笔记·git·ubuntu·ssh·github
百***670332 分钟前
Nodemailer使用教程:在Node.js中发送电子邮件
linux·运维·node.js
ddacrp38 分钟前
RHEL_NFS服务器
linux·服务器·网络
凄戚1 小时前
docker 镜像失效问题
运维·docker·容器