one-api icon indicating copy to clipboard operation
one-api copied to clipboard

caddy 代理空白页

Open cumthxy opened this issue 9 months ago • 3 comments

例行检查

  • [ ] 我已确认目前没有类似 issue
  • [ ] 我已确认我已升级到最新版本
  • [ ] 我已完整查看过项目 README,尤其是常见问题部分
  • [ ] 我理解并愿意跟进此 issue,协助测试和提供反馈
  • [ ] 我理解并认可上述内容,并理解项目维护者精力有限,不遵循规则的 issue 可能会被无视或直接关闭

问题描述

复现步骤

预期结果

相关截图 如果没有的话,请删除此节。

采用docker部署。

caddy 配置:reverse_proxy / localhost:3000

空白页。没有任何显示。

cumthxy avatar Sep 20 '23 08:09 cumthxy

没用过 caddy,空白页可以看一下控制台报错吗

songquanpeng avatar Sep 23 '23 15:09 songquanpeng

@cumthxy 你把caddy的配置修改成reverse_proxy * localhost:3000再试试。

liuzl avatar Sep 27 '23 05:09 liuzl

@cumthxy 我使用docker compose 部署 one-api 、redis、caddy,one-api 和 caddy 容器之间的通信,在同一个网络,请使用 one-api 容器名称。

Caddyfile:

{domain} {
    reverse_proxy one-api:3000
}

docker-compose.yml:

services:
  redis:
    image: "${REGISTRY:-docker.io}/redis:latest"
    container_name: redis
    restart: always
    volumes:
      - redis_data:/data

  one-api:
    image: "${REGISTRY:-docker.io}/justsong/one-api:latest"
    container_name: one-api
    restart: always
    command: --log-dir /app/logs
    # ports:
    #   - "3000:3000"
    volumes:
      - oneapi_data:/data
      - oneapi_logs:/app/logs
    environment:
#     - SQL_DSN=oneapi:123456@tcp(db:3306)/one-api  # 修改此行,或注释掉以使用 SQLite 作为数据库
      - REDIS_CONN_STRING=redis://redis
      - SESSION_SECRET=gandlioneapi  # 修改为随机字符串
      - TZ=Asia/Shanghai
    #  - NODE_TYPE=slave  # 多机部署时从节点取消注释该行
    #  - SYNC_FREQUENCY=60  # 需要定期从数据库加载数据时取消注释该行
    #  - FRONTEND_BASE_URL=https://openai.justsong.cn  # 多机部署时从节点取消注释该行
    depends_on:
      - redis
      # - db
    healthcheck:
      test: [ "CMD-SHELL", "wget -q -O - http://localhost:3000/api/status | grep -o '\"success\":\\s*true' | awk -F: '{print $2}'" ]
      interval: 30s
      timeout: 10s
      retries: 3

  # db:
  #   image: "${REGISTRY:-docker.io}/mysql:8.2.0"
  #   restart: always
  #   container_name: mysql
  #   volumes:
  #     - ./data/mysql:/var/lib/mysql  # 挂载目录,持久化存储
  #   ports:
  #     - '3306:3306'
  #   environment:
  #     TZ: Asia/Shanghai   # 设置时区
  #     MYSQL_ROOT_PASSWORD: 'OneAPI@justsong' # 设置 root 用户的密码
  #     MYSQL_USER: oneapi   # 创建专用用户
  #     MYSQL_PASSWORD: '123456'    # 设置专用用户密码
  #     MYSQL_DATABASE: one-api   # 自动创建数据库
  caddy:
    image: caddy
    container_name: caddy
    restart: always
    ports:
      - "80:80"   # HTTP
      - "443:443" # HTTPS
    volumes:
      - ./Caddyfile:/etc/caddy/Caddyfile
      - caddy_data:/data
      - caddy_config:/config
    depends_on:
      - one-api

volumes:
  oneapi_data:
  oneapi_logs:
  redis_data:
  caddy_data:
  caddy_config:

gandli avatar Mar 29 '24 08:03 gandli