编译成包
python setup.py bdist_wheel
将包上传到生产服务器
./rsync2aws.sh
docker 启动服务
docker compose up -d --build
补充
setup.py
from setuptools import setup, find_packages
setup(
name='chat_gpt_**',
version='1.1.1',
description='chat_gpt项目',
author='openai',
author_email='openai@outlook.com',
install_requires=["Flask", "Flask-Cors", "openai", "gunicorn", "PyMySQL", "numpy"],
packages=find_packages(),
include_package_data=True,
)
requirements.txt (setup.py 里面install_requires 的内容相关)
Flask==2.2.2
Flask-Cors==3.0.10
openai==0.27.2
gunicorn==20.1.0
PyMySQL==1.0.2
numpy==1.24.2
rsync2aws.sh
rsync -avz --exclude="venv" --exclude=".git" --exclude="logs" --exclude=".idea" --exclude="__pycache__" --exclude="checkpoints" --exclude="pretrained_w" --exclude="tmp" * ubuntu@***.***.***.***:/home/ubuntu/workshop/chat_gpt/
Dockerfile
FROM python:3.9
WORKDIR /app
COPY dist/chat_gpt_**-1.1.1-py3-none-any.whl /app/chat_gpt_**-1.1.1-py3-none-any.whl
RUN pip install -U pip && pip install chat_gpt_**-1.1.1-py3-none-any.whl
RUN rm -rfv /app/chat_gpt_**-1.1.1-py3-none-any.whl
docker-compose.yml
version: "3.8"
services:
chat_gpt:
build: .
image: chat_gpt:1.0.0
restart: always
command:
- /bin/sh
- -c
- "gunicorn -t 120 -w 4 -b 0.0.0.0:98 'flaskr:app'"
ports:
- "98:98"
environment:
- PYTHONUNBUFFERED=1
container_name: "chat_gpt"
networks:
- app_net
networks:
app_net:
参考
flask Setuptools 部署
flask 部署产品
GitHub :chatgpt_serve