服务端网络错误

无法激活或订阅已暂停

MT Photos服务端需要访问授权服务器来验证订阅是否过期;

如果您的服务器无法访问网络,会“无法激活”或者提示“订阅已暂停(无法访问授权服务器),请尝试【更新订阅信息】”。

当遇到以上问题时,请按照以下方法解决:

1、检查系统日期是否正确

当系统日期错误时,会导致https请求失败,请修改系统的日期为正确的日期。

2、检查容器内DNS解析是否正常

1、查看容器内的DNS配置

容器的终端内执行以下命令:

cat /etc/resolv.conf

2、测试访问授权服务器

容器的终端内执行以下命令:

wget https://auth.mtmt.tech/license

DNS解析正常示例: 查看dns配置

如果wget https://auth.mtmt.tech/license 返回的数据中有Temporary failure in name resolution.,那么说明dns解析失败了

DNS解析异常示例: dns解析出错

解决方法

方法1、可以尝试将容器的网络改为host

因为host模式下,容器的dns是与宿主机一致的

如果容器是使用docker-compose创建的,那么需要添加 network_mode: "host",比如:

添加时注意每一行文本的缩进,yaml格式对文本缩进有要求

version: "3"

services:
  mtphotos:
    image: registry.cn-hangzhou.aliyuncs.com/mtphotos/mt-photos:latest
    container_name: mtphotos
    restart: always
    network_mode: "host"
    volumes:
      - /volume1/docker/mt_photos/config:/config
      - /volume1/photos/mt_photos_upload:/upload
      - /volume1/xxx/其他需要映射的目录:/photos
    environment:
      - TZ=Asia/Shanghai
      - LANG=C.UTF-8
      - PUID=1000
      - PGID=100
    depends_on:
      - mtphotos_ai
  mtphotos_ai:
    image: registry.cn-hangzhou.aliyuncs.com/mtphotos/mt-photos-ai:onnx-latest
    container_name: mtphotos_ai
    restart: always
    ports:
      - 8060:8000
    environment:
      - API_AUTH_KEY=mt_photos_ai_extra_secret

方法2、创建容器时增加 --dns=114.114.114.114 参数来指定单个容器的DNS

UNRAID可在编辑容器中,点击右上角的高级视图,然后在额外参数中添加;

额外参数 dns配置

命令行参数参考:

docker run -d \
  --name="mt-photos" \
  -v /xxx/mt_photos/config:/config \
  -v /xxx/mt_photos/upload:/upload \
  -p 8063:8063 \
  --dns=114.114.114.114 \
  mtphotos/mt-photos

docker-compose模板参考:

version: "3"

services:
  mtphotos:
    image: registry.cn-hangzhou.aliyuncs.com/mtphotos/mt-photos:latest
    container_name: mtphotos
    restart: always
    ports:
      - 8063:8063
    volumes:
      - /volume1/docker/mt_photos/config:/config
      - /volume1/photos/mt_photos_upload:/upload
      - /volume1/xxx/其他需要映射的目录:/photos
    environment:
      - TZ=Asia/Shanghai
      - LANG=C.UTF-8
    dns:
      - 114.114.114.114
      - 223.5.5.5

方法3、修改 /etc/docker/daemon.json 文件来指定所有容器的DNS

{
  ...,
  // 上面为其他的配置,以下为新增的内容
  "dns" : [
    "114.114.114.114",
    "8.8.8.8"
  ]
}

详细docker的配置可以参考:https://yeasy.gitbook.io/docker_practice/network/dns

Copyright © 2023 杭州相册家科技有限公司 All Rights Reserved

浙公网安备 33019202000625号浙ICP备2022014580号