mingchen666 / DocTranslator

DocTranslator is a powerful document AI translation tool that supports multiple file formats, OpenAI APIs, batch operations, multi-threading, and Docker deployment for efficient translation tasks! DocTranslator 是一款强大的文档 AI 翻译工具,支持多种文件格式、OpenAI格式、批量操作、多线程和 Docker 部署,以实现高效的翻译任务!🚀
https://dc.starpms.cn
149 stars 30 forks source link

一个在unraid部署的docker-compose方案 #5

Open LLIce opened 4 months ago

LLIce commented 4 months ago
services:
  backend:
    image: ezwork-api  
    container_name: backend-container
    build:
      context: /mnt/user/appdata/DocTranslator-main/backend
      dockerfile: Dockerfile
    env_file:
      - /mnt/user/appdata/DocTranslator-main/backend/.env
    networks:
      - newdocker
    ports:
      - "5000:5000"
    volumes:
      - /mnt/user/appdata/DocTranslator-main/backend:/app
      - /mnt/user/appdata/DocTranslator-main/backend/db:/app/db
    environment:
      - FLASK_ENV=${FLASK_ENV}
      - SECRET_KEY=${SECRET_KEY}
      - PROD_DATABASE_URL=${PROD_DATABASE_URL}
      - SQLALCHEMY_DATABASE_URI=${SQLALCHEMY_DATABASE_URI}
      - JWT_SECRET_KEY=${JWT_SECRET_KEY}
      - JWT_ACCESS_TOKEN_EXPIRES=${JWT_ACCESS_TOKEN_EXPIRES}
      - MAIL_SERVER=${MAIL_SERVER}
      - MAIL_PORT=${MAIL_PORT}
      - MAIL_USE_TLS=${MAIL_USE_TLS}
      - MAIL_USERNAME=${MAIL_USERNAME}
      - MAIL_PASSWORD=${MAIL_PASSWORD}
      - MAIL_DEFAULT_SENDER=${MAIL_DEFAULT_SENDER}
      - ALLOWED_EMAIL_DOMAINS=${ALLOWED_EMAIL_DOMAINS}

    restart: unless-stopped

  nginx:
    image: nginx:stable-alpine
    container_name: nginx-container
    networks:
      - newdocker
    ports:
      - "1475:80"
      - "8081:8081"
    volumes:
      - /mnt/user/appdata/DocTranslator-main/nginx/nginx.conf:/etc/nginx/conf.d/default.conf
      - /mnt/user/appdata/DocTranslator-main/frontend/dist:/usr/share/nginx/html/frontend
      - /mnt/user/appdata/DocTranslator-main/admin/dist:/usr/share/nginx/html/admin
    restart: unless-stopped

networks:
  newdocker:
    external: true

.env

FLASK_ENV=production
SECRET_KEY=your-secret-key

JWT_SECRET_KEY=sxxxxxx
JWT_ACCESS_TOKEN_EXPIRES=172800

PROD_DATABASE_URL=mysql+pymysql://
SQLALCHEMY_DATABASE_URI=${PROD_DATABASE_URL}

MAIL_SERVER=smtp.qq.com
MAIL_PORT=587
MAIL_USE_TLS=true
MAIL_USERNAME=xxx5@qq.com
MAIL_PASSWORD=xxxx
MAIL_DEFAULT_SENDER=xxx@qq.com
ALLOWED_EMAIL_DOMAINS=qq.com,163.com,126.com
# 跨域 允许的域名
ALLOWED_DOMAINS=*

用的mariadb,自建了一个newdocker,按实际情况修改

最后修改下```powerpoint.py thread = threading.Thread(target=translate.get,args=(trans,event,texts,run_index)) thread = threading.Thread(target=to_translate.get,args=(trans,event,texts,run_index))