디스코urs 플러그인을 설치하면서 컨테이너를 재빌드하기 전에 명령줄에서 디스크 공간 관련 경고가 표시되었습니다. DigitalOcean 드롭렛에서 오래된 Linux 버전을 제거하기 위해 몇 가지 명령을 실행했지만, 여전히 SSD 용량의 50%를 초과하고 있습니다.
디스코urs 웹사이트가 커지면서 저장소 솔루션을 알아보기 시작했습니다. 현재 5달러짜리 DigitalOcean 드롭렛을 사용 중이며, DigitalOcean 블록 스토리지와 Amazon S3에 대해 여러 자료를 찾아보았습니다. 디스코urs 설정에 S3 설정이 내장되어 있는 것을 보니, 설정이 더 쉬울 것 같아 추측하고 있습니다.
여러분의 웹사이트에는 무엇을 사용하시나요? S3와 DigitalOcean 블록 중 어느 쪽이 로딩 속도가 더 좋나요? 어떤 옵션이 더 저렴한가요? S3의 무료 티어가 DigitalOcean 블록보다 더 저렴하지 않을까요? 이미지를 백업과 함께 저장하시나요? 아니면 DigitalOcean과 Amazon 외의 다른 옵션을 추천하시나요?
Cloudflare의 무료 플랜을 버킷 앞의 CDN으로 사용할 수 있을까요? 이미 무료 DDoS 보호를 위해 도메인 설정에 Cloudflare를 사용 중입니다.
DigitalOcean이 Spaces 서비스를 다른 유명 제공업체보다 저렴하게 광고하는 것을 알게 되었습니다. 따라서 확실히 장점이 됩니다.
DigitalOcean Spaces에 포함된 CDN이 Discourse와 올바르게 작동하지 않기 때문에, 목록에 있는 다른 제공업체 중 하나를 사용하는 것이 나을 것 같습니다. 그러면 DigitalOcean Spaces와 별도의 CDN 서비스에 대한 비용을 따로 지불할 필요가 없습니다.
DO CDN 구현에서 content-encoding이 누락되는 것은 분명히 아쉬운 점이지만, 이는 app.yml 안에 모든 S3 매개변수를 설정할 때만 발생합니다. 이러한 매개변수가 웹 관리 콘솔을 통해 사이트 설정에서 설정되면, DO는 S3 업로드만 CDN을 통해 서빙하고 사이트 자산은 여전히 소스에서 서빙됩니다.
app.yml에 설정된 경우 DISCOURSE_S3_CDN_URL 환경 변수가 자산의 CDN 설정도 덮어쓰지만, 사이트 설정에서만 선언된 경우 그렇지 않은 것 같으므로, 이는 의도된 동작인 것으로 보입니다.
이것은 다소 일관성이 없으나, 사이트가 깨지지 않도록 DO CDN을 S3 업로드에만 사용할 수 있게 해줍니다:
이를 수행하는 두 가지 방법이 있습니다:
모든 S3 설정을 사이트 설정에만 선언
rails c
SiteSetting.s3_upload_bucket="<bucket_name>/<uploads_folder>"
SiteSetting.s3_backup_bucket="<bucket_name>/<backups_folder>"
SiteSetting.enable_s3_uploads=true
SiteSetting.s3_access_key_id="<key>"
SiteSetting.s3_secret_access_key="<secret_key>"
SiteSetting.s3_endpoint="https://<sfo2>.digitaloceanspaces.com"
SiteSetting.s3_cdn_url="https://<bucket_name>.<sfo2>.cdn.digitaloceanspaces.com/<uploads_folder>"
SiteSetting.backup_location="s3"
app.yml에서 DISCOURSE_S3_CDN_URL을 제외한 모든 S3 설정을 섀도(shadow)하고, DO CDN을 SiteSetting.s3_cdn_url에 선언