配置兼容S3的对象存储提供商用于上传

感谢您整理了这份指南!我使用 Minio 取得了一些成功。

对于其他尝试使用 Docker Compose 在本地设置它的人来说,您可以告诉 Docker 添加一个主机名别名,使其作为子域工作,如下所示:

  minio:
    image: minio/minio
    command: server --console-address :9001 /data
    ports:
      - "9000:9000"
      - "9001:9001"
    volumes:
      - ./data/minio:/data
    environment:
      MINIO_DOMAIN: minio.mydomain.com
    networks:
      default:
        aliases:
          - assets.minio.mydomain.com

在这种情况下,您需要设置 DISCOURSE_S3_ENDPOINT=http://minio.mydomain.com:9000,DISCOURSE_S3_CDN_URL=//assets.minio.mydomain.com:9000,并将本地 /etc/hosts/ 文件设置为将子域指向 localhost。

这在大多数情况下都运行良好,但我确实注意到 Discourse 无法从没有端口 80 或 443 的地址下载文件,因此上传图片可以工作,但在尝试下载它以调整大小时会失败。

我想也许可以在 Minio 部分或摘要中提到 DISCOURSE_S3_CDN_URL 必须是端口 80 或 443。

4 个赞