docker-compose.yml 2.5 KB

1234567891011121314151617181920212223242526272829
  1. version: '3'
  2. services:
  3. chatgpt:
  4. container_name: chatgpt
  5. image: eryajf/chatgpt-dingtalk:latest
  6. restart: always
  7. environment:
  8. LOG_LEVEL: "info" # 应用的日志级别 info/debug
  9. APIKEY: xxxxxx # 你的 api_key
  10. BASE_URL: "" # 如果你使用官方的接口地址 https://api.openai.com,则留空即可,如果你想指定请求url的地址,可通过这个参数进行配置,注意需要带上 http 协议
  11. MODEL: "gpt-3.5-turbo" # 指定模型,默认为 gpt-3.5-turbo , 可选参数有: "gpt-4-0314", "gpt-4", "gpt-3.5-turbo-0301", "gpt-3.5-turbo",如果使用gpt-4,请确认自己是否有接口调用白名单
  12. SESSION_TIMEOUT: 600 # 会话超时时间,默认600秒,在会话时间内所有发送给机器人的信息会作为上下文
  13. HTTP_PROXY: http://host.docker.internal:15777 # 指定请求时使用的代理,如果为空,则不使用代理,注意需要带上 http 协议 或 socks5 协议
  14. DEFAULT_MODE: "单聊" # 指定默认的对话模式,可根据实际需求进行自定义,如果不设置,默认为单聊,即无上下文关联的对话模式
  15. MAX_REQUEST: 0 # 单人单日请求次数上限,默认为0,即不限制
  16. PORT: 8090 # 指定服务启动端口,默认为 8090,容器化部署时,不需要调整,一般在二进制宿主机部署时,遇到端口冲突时使用
  17. SERVICE_URL: "" # 指定服务的地址,就是当前服务可供外网访问的地址(或者直接理解为你配置在钉钉回调那里的地址),用于生成图片时给钉钉做渲染
  18. CHAT_TYPE: "0" # 限定对话类型 0:不限 1:只能单聊 2:只能群聊
  19. ALLOW_GROUPS: "" # 哪些群组可以进行对话,如果留空,则表示允许所有群组,如果要限制,则填写群组的名字,比如 "aa,bb"
  20. ALLOW_USERS: "" # 哪些用户可以进行对话,如果留空,则表示允许所有用户,如果要限制,则填写用户的名字,比如 "张三,李四"
  21. ADMIN_USERS: "" # 指定哪些人为此系统的管理员,如果留空,则表示没有人是管理员,如果要限制,则填写用户的名字,比如 "张三,李四"
  22. APP_SECRET: "" # 钉钉机器人在应用信息中的AppSecret,为了校验回调的请求是否合法,如果留空,将会忽略校验,则该接口将会存在其他人也能随意调用的安全隐患,因此强烈建议配置正确的secret
  23. volumes:
  24. - ./data:/app/data
  25. ports:
  26. - "8090:8090"
  27. extra_hosts:
  28. - host.docker.internal:host-gateway