첨부 파일 용량 제한 1024000KB를 늘릴 수 있나요?

첨부 파일 저장을 위해 S3를 사용하므로 최대 160GB까지 처리할 수 있습니다.
nginx 제한 값을 0(무제한)으로 변경했으며,
app.yml의 “upload_size” 파라미터도 0으로 설정되어 있습니다.

S3로 직접 업로드하는 것이 아니라, 먼저 서버로 전송된 후 서버가 S3로 보내는 구조입니다. 따라서 제한 용량이 무료 디스크 공간보다 크지 않도록 설정해야 합니다.

네, 디스크 공간이 충분하므로 한도를 10GB로 설정하고 싶습니다. 그런데 Discourse의 한도를 어떻게 변경할 수 있나요?

커스텀 플러그인을 사용하여 max 값을 덮어쓸 수 있습니다. 아래를 예로 사용할 수 있습니다:

확인해 주셔서 감사합니다. 이 플러그인과 아래 설정을 사용했을 때 제한이 해제되었음을 확인했습니다:

files:
  max_attachment_size_kb:
    client: true
    default: 1024000
    max: 6144000

다만, 두 가지 문제가 있습니다:

  1. 2GB 파일을 업로드하면 100%까지 정상적으로 진행되다가 일반적인 팝업 오류 메시지와 함께 실패합니다.
  2. 이 작업을 시도할 때마다 Discourse Docker의 크기가 2GB씩 증가하며, 용량이 해제되지 않습니다!! 공간이 거의 부족합니다.. 이 문제를 어떻게 해결할 수 있을까요?

원하시는 클라우드 드라이브 서비스를 사용하고, Discourse 주제에 파일 링크를 연결하는 것이 더 좋습니다. Discourse는 대용량 파일 저장소로 의도된 도구가 아니기 때문입니다.

저는 S3 클라우드 스토리지를 사용하고 있습니다. Discourse 자체에는 아무것도 저장되지 않아야 합니다.

그게 아니라 _소비자_용 클라우드 드라이브 서비스, 예를 들어 Google Drive, OneDrive, Dropbox 같은 걸 말한 거예요.

어떤 방식으로 하든, Discourse는 대용량 파일을 처리하도록 설계되지 않았습니다.

파일이 어디에 저장되든, Discourse는 부피가 큰 파일 업로드 메커니즘으로 설계된 것이 아닙니다.

그것이 의도된 기능이 아니라는 점은 이해합니다. 하지만 저에게는 매우 유용한 기능이 될 것이며, 사용자가 업로드를 위해 다른 서비스로 이동했다가 다시 Discourse로 돌아올 필요가 없게 된다면 사용자 경험이 크게 향상될 것입니다. 따라서 원래 개발 의도와는 무관하게, 이 기능이 작동하도록 시도해 보려는데, 혹시 기분 상하게 하지 않으셨으면 합니다.

오픈소스의 장점은 자유롭게 실험해 볼 수 있다는 점입니다.

마찬가지로, 특정 기능이 지원되지 않는 경우, Discourse의 향후 변경 사항이 현재 적용 중인 수정 사항을 완전히 무용지물로 만들 수 있다는 보장은 없습니다.

저도 제 사이트에서 대용량 파일 업로드(50MB까지 가능할 수 있으며, API를 통한 일괄 업로드도 가능할 수 있음)를 허용하는 것을 고려하고 있습니다. 여기서 우려되는 점이 무엇인지 이해하려고 합니다. S3가 대용량 파일 업로드와 저장을 처리하도록 구성되어 있고, Discourse 포럼이 해당 파일에 링크를 걸어 사용자에게 다운로드 링크를 표시한다면, Discourse가 어떤 부분에서 문제가 발생할 것으로 예상되는지에 대해 더 자세한 정보를 제공해 주실 수 있는 분이 있습니까?

현재 업로드 컴포넌트는 대규모 업로드를 위해 설계되지 않았습니다(관리자 UI에서 백업 업로드만 해당됩니다).

현재 업로드 코드를 정규화하고 리팩터링하고 있으며, 완료되면 s3로의 직접 업로드를 지원할 계획입니다. 그렇게 되면 기술적으로 s3로의 대규모 업로드가 가능해질 것입니다.

@sam, 정보를 알려주셔서 감사합니다. 이전에는 파일 업로드가 어떻게 저장되는지 잘 몰랐습니다. 그렇다면 기본적으로 파일 업로드는 Discourse가 실행 중인 서버에 저장되는 것이네요. 그렇다면 큰 용량의 파일 업로드가 문제가 될 수 있다는 점을 이해합니다. 그리고 향후 S3로의 직접 업로드를 지원하기 위해 노력하고 계신 것도 잘 이해하고 있습니다.

여기에 설명된 대로 현재 설정을 구성하여 파일 업로드를 S3로 보내도록 한다면 어떨까요?

그렇게 하면 향후 자동으로 출시할 예정인 기능과 동일한 이점을 지금부터 누릴 수 있고, Discourse가 대용량 파일 업로드(및 다운로드)를 지원할 수 있게 될까요?

현재 업로드 시스템은 user → discourse server → s3 순서로 작동합니다.

몇 주 안에 배포할 예정인 새로운 시스템은 user → s3 순서로 작동합니다.

새 업로드 시스템으로 원활하게 전환할 수 있을까요? 즉, 기존 시스템으로 업로드된 파일은 계속 작동하고, 새 시스템으로 업로드된 파일도 정상적으로 작동할 수 있다는 뜻입니다.

모든 것이 S3에 저장되므로 가능할 것 같지만, 확인하고 싶었습니다. 감사합니다.

파일이 동일한 위치에 저장되지만 단지 우회로를 덜 따르는 것이므로, 이 변경 사항은 사용자와 관리자 모두에게 투명하게 적용됩니다.

정리하자면: 사용자는 어떤 변화도 거의 느끼지 못할 것이며, 단지 (아마도?) 파일 업로드와 다운로드 속도가 빨라질 뿐입니다. 그리고 관리자가 원할 경우 더 큰 용량의 파일 업로드가 가능해집니다. 제가 이해한 것이 맞나요?

업로드 속도는 아마도 빨라질 것입니다. 다운로드는 동일하게 유지될 것입니다(해당 기능이 업로드에만 영향을 미치기 때문).

그렇게 될 것이라 추정하지만, 공식적인 발표는 discourse 팀에 달려 있습니다.