셀프 호스팅에 대해 헷갈려요

(내 수준: Wix로 몇 개의 반복잡한 웹사이트를 만들어본 초보 코더)

최근에 좀 더 명확해진 큰 혼란 중 하나는 Discourse를 셀프호스팅하는 것이 일반적인 '웹호스팅’과 매우 다르다는 점입니다.

1) Discourse 셀프호스팅에 서버가 필요하다는 것은 전혀 다른 개념을 의미하는 거죠? (그래서 흔히 광고되는 웹호스팅 가격과 큰 가격 차이가 나는 거 맞죠?)
2) 그러면 'VPS 호스팅’이 Discourse 셀프호스팅과 관련된 동등한 용어인가요? 아니면 이 외에도 다른 옵션이 있나요? 다른 종류의 셀프호스팅이 있는 건가요? (물론 내 하드웨어로 호스팅하는 것도 알고 있습니다.)

3.1) 그러면 '매니지드 호스팅’은 그 VPS 타입 호스팅 위에 제공되는 서비스인가요? 3.2) 가격이 훨씬 비싼가요? 3.3) 정확히 어떤 일을 해주는 건가요? 3.4) 작은 포럼(~100명/월)을 시작하는 예산이 부족한 초보자로서, 매니지드 호스팅 없이도 할 수 있겠죠?

온라인에서 Discourse 호스팅에 대해 몇 시간 동안 읽은 결과, 아래 인용글이 포함된 게시글이 호스팅 경로를 선택하는 데 가장 도움이 되고 완전한 개요를 제공해 주었습니다.

이 인용된 내용에 대해, 누군가 다음 사항들을 명확히 해줄 수 있을까요?
4.1) 이건 서버 유지보수에 관한 거죠? DigitalOcean(DO)/Hetzner를 통해 진행할 때 이미 포함되어 있는 거 아닌가요? 아니면 별도 서비스에서만 포함되는 건가요? 그렇다면 그 서비스는 무엇이라고 하나요? 예를 들어 DO의 1클릭 드롭릿을 사용할 때, 그 유지보수가 포함된 그런 종류의 건가요? 아니면 설정에만 관련되는 건가요?
4.2) 내 규모의 포럼에서 '유지보수’는 어떤 수준의 시간과 지식을 요구하나요?
4.3) @tophee가 "여러 이유로 인해, 매니지드 서버는 Discourse 포럼 관리자들에 의해 거의 사용되지 않습니다"라고 했습니다. 왜 그런가요?

이 결정 트리도 꽤 도움이 되었습니다. 아마 오래되었을 수 있으니, 만약 이제 더 쉬운 부분이 있다면 알려주세요.


5.1) SSH가 무엇인지 정확히 이해가 안 되고, 이 그래프에 따르면 셀프호스터들은 모두 이걸 필요로 하나요?
5.2) DO, MailGun 및 DNS 관리를 괜찮다고 한 것은 무슨 의미인가요? 내 규모의 포럼에서 이들을 관리하는 것은 어떤 수준의 시간과 지식을 요구하나요?

질문에 답변을 드리겠습니다만, 용어들이 겹쳐서 혼란을 느끼신 것 같다는 생각이 듭니다.

이 포럼에서 사람들이 '셀프 호스팅(self-hosting)'이라고 할 때는, 자신의 서버에서 Discourse 인스턴스를 실행하는 것을 의미합니다. (이 부분은 잠시 후 자세히 설명하겠습니다.) '매니지드 호스팅(managed hosting)'이라고 할 때는, 호스팅 업체가 하드웨어를 제공하고 그 위에서 Discourse 인스턴스를 실행해주는 서비스를 말합니다. '매니지드 호스팅’이란 Discourse 인스턴스가 해당 서비스에서 관리된다는 뜻으로, Discourse 인스턴스와 이를 실행하는 운영체제의 업데이트 및 정상적인 작동을 업체가 처리해 준다는 의미입니다.

Discourse를 '셀프 호스팅’하려면 인터넷에 접근할 수 있는 서버와, 해당 서버를 가리키도록 올바르게 설정된 DNS 서비스가 필요합니다. 이 서버는 제자리에 설치된 실제 하드웨어일 수도 있고, 'VPS’일 수도 있습니다. VPS는 Virtual Private Server(가상 전용 서버)의 약자로, 제자리에 설치된 것처럼 사용자가 완전히 제어할 수 있지만 ‘원격으로’ 접근하는 업체가 제공하는 서버 하드웨어를 말합니다. '원격 접근’이란 SSH나 FTP와 같은 도구를 사용하여 서버에 접속하고, 제어하며, 파일을 전송하는 것을 의미합니다.

SSH는 'Secure Shell(보안 셸)'입니다. 보안 셸은 기본적으로 보안(암호화) 터널을 통해 실행되는 명령 프롬프트입니다. 명령 프롬프트를 통해 서버를 실행해 본 경험이 있으신가요?

Shell, terminal, command line, command prompt는 모두 대략 같은 것을 의미합니다. 터미널 창을 열어 프롬프트에 명령어를 입력하는 방식으로 컴퓨터를 조작하는 것입니다. 방금 말씀드린 내용이 생소하게 느껴진다면, 시도하기 전에 일부 학습이 필요할 수 있습니다.

VPS를 임대하면 자격 증명(크레덴셜)과 새 서버의 IP 주소를 받게 됩니다. 구매 시 보통 운영체제 선택지가 주어집니다. PuTTY와 같은 터미널 프로그램이나 컴퓨터의 터미널 창을 사용하여 서버에 로그인합니다. Filezilla와 같은 FTP(File Transfer Protocol) 프로그램을 사용하여 컴퓨터에서 VPS로 파일을 전송할 수 있습니다.

따라서 VPS를 임대하고 SSH를 통해 로그인한 후, 서버에 Discourse 인스턴스를 설치하면 '셀프 호스팅’을 하게 됩니다. 자신의 Discourse 인스턴스와 이를 실행하는 서버에 대한 완전한 제어권을 갖게 됩니다. 일반적으로 Discourse 자체의 내장 관리 도구를 사용하여 최신 상태를 유지할 수 있지만, 때로는 명령 프롬프트를 통해 수동으로 업데이트해야 할 수도 있습니다. 또한 데이터 백업을 유지하고 복원하는 방법을 알아야 합니다. Discourse는 자동으로 백업을 생성하지만, 필요할 경우를 대비해 백업 파일을 다운로드하여 안전하게 보관해야 합니다.

VPS를 사용하는 경우 Discourse 인스턴스가 실행되는 운영체제도 유지보수해야 합니다. 이는 운영체제에 대한 지식과 최신 상태를 유지하고 정상적으로 작동하도록 관리하는 방법을 요구합니다. VPS를 잘못 설정하면, VPS 호스팅 업체가 할 수 있는 일은 대개 운영체제를 초기화하고 새 버전을 다시 설치하는 것뿐입니다. 운영체제를 다시 설치해야 할 경우를 대비해 중요한 데이터도 백업해 두어야 합니다.

설정을 마치고 실행하기 시작하면, 무엇을 해야 하는지 알고 있다면 유지보수가 비교적 쉬운 편입니다. 기술 수준에 대한 설명을 들어 보면, 잘 처리하실 수 있을 것 같습니다. 이 모든 것을 하는 법을 배우는 가장 좋은 방법은 직접 시도하는 것입니다. 요즘은 VPS 임대가 비교적 저렴합니다. 서버를 설정하고 Discourse를 실행해 보고, 질문이 있다면 여기나 ask.discourse.org에 오세요.

다만, 운영하시는 포럼에 많은 트래픽이 들어오지 않는 한(혼자서는 절대 그렇지 않을 것입니다), 실수를 하더라도 처음부터 다시 시작할 수 있다는 점을 명심하세요. 많은 사람들이 포럼에 가입하여 게시물을 쓰기 시작하면, 이를 유지보수하고 백업해야 합니다. 기존 포럼이 있거나 홍보하거나 지원할 제품이 있다면 호스팅 제공업체를 알아보는 것도 좋습니다. 그냥 놀아 보고 배우고 싶다면… 망설이지 말고 도전해 보세요.

Discourse 호스팅 =/= 셀프호스팅

저는 경험 많은 셀프호스터이며 몇 가지 복잡한 설정을 해본 적이 있습니다. 또한 이전에 Discourse에서 근무한 경험이 있어 두 개념에 대해 어느 정도 통찰력을 가지고 있습니다. 질문자분께서는 두 개념을 조금 혼동하고 계신 것 같습니다. 설명이 길어질 수 있지만, 몇 가지 사항을 명확히 해드리겠습니다. 물론 이는 포괄적인 설명은 아닙니다.

Discourse 호스팅은 말 그대로의 의미입니다. Discourse가 수수료를 받고 질문자분의 사이트를 호스팅해 주는 것입니다. 질문자분께서 이미 발견하셨듯이, 무료부터 시작하는 다양한 가격대의 티어가 있으며, 티어가 올라갈수록 더 많은 옵션이 제공됩니다. 엔터프라이즈는 최상위이자 가장 비싼 티어로, 가장 많은 옵션과 최상급 지원 팀 서비스, 맞춤형 디자인 및 개발 옵션을 제공합니다. 매니지드 호스팅도 마찬가지입니다(Discourse 호스팅은 매니지드 호스팅의 일종입니다). Communiteq나 Literate Computing 같은 다른 파트너 회사들도 이를 제공합니다. 이러한 파트너 회사들은 호스팅 외에 다양한 개발 및 지원 서비스를 유료로 제공합니다(저도 마찬가지입니다). 개발 및 전문적인 지원은 통상적으로 무료가 아니라는 점을 유념해 주십시오. 이것이 Marketplace 채널의 목적입니다. 또한, Discourse 호스팅 가격 구조가 비싸게 느껴질 수 있지만, 많은 유명 기업들이 대규모로 운영되는 잘 관리되는 엔터프라이즈 포럼(많은 부분이 비공개)을 위해 최고 수준의 금액을 지불하고 있다는 점을 보증할 수 있습니다. Discourse가 제공하는 SLA와 지원/개발 서비스 수준은 그들의 비즈니스 활동이 이를 요구하기 때문입니다. 예를 들어, 기술 기업이나 금융 기관으로서 서비스 중단 및 손실로 6자릿수(수백만 원)의 비용을 초래할 수 있는 DDoS 공격을 받거나, 대량의 직원을 위해 매우 맞춤형화된 전문적인 인터페이스가 필요하다면, 엔터프라이즈 호스팅에 지불하는 금액은 그만한 가치가 있습니다.

셀프호스팅은 말 그대로의 의미입니다. 질문자분이 임대 서버(또는 소유한 물리적 서버, 이는 권장하지 않습니다. 왜냐하면 또 다른 고급 난관이기 때문입니다)에 자신의 사이트를 호스팅하는 것입니다. 셀프호스팅은 단순히 서버(또는 VPS - 가상 전용 서버)를 임대하고 ssh로 접속하는 것만으로 끝나는 것이 아닙니다. 셀프호스팅 관리자가 되기 위해서는 반드시 알아야 할 지식이 있습니다. Wix로 몇 개의 웹사이트를 만든 초보 코더가 셀프호스팅 Discourse 관점에서 큰 도움이 되지는 않을 것입니다. 매우 다른 분야이고 기술 수준도 다릅니다. 아직 SSH가 무엇인지 모른다는 사실은 해당 영역에서 더 배워야 할 부분이 있다는 지표일 수 있습니다. Secure Shell - Wikipedia

배우기에 관심이 있다면, 표준 설치 문서를 읽고 거기서부터 기초를 다지는 것을 제안합니다. 사람마다 쉬운 정도가 다르며, 웹사이트 관리 경험이 있다는 점이 더 빠르게 배우는 데 도움이 될 수 있습니다. 서버에 ssh로 접속할 수 있는 것만으로는 부족하며, 커맨드 라인 인터페이스에 익숙하고 docker 관리의 기초와 컨테이너 작동 원리를 이해해야 합니다. 질문자분께서 작은 사이트라고 하셨으므로, 시작점으로 표준 설치가 적합할 가능성이 높으며, 이는 모든 내장 플러그인에 접근할 수 있게 해줄 뿐만 아니라 추가하고 싶은 다른 플러그인에도 접근할 수 있게 해줍니다. 기본적으로 셀프호스팅 Discourse 인스턴스는 전문가 지원과 가동 시간 SLA, 성능(예: 재빌드나 업데이트 시마다 일부 다운타임이 발생하지만, Discourse 호스팅은 이를 대신 처리하며 눈에 띄는 다운타임 없이 수행합니다)이 없는 자신의 엔터프라이즈 레벨 Discourse 호스팅 포럼을 소유하는 것과 같습니다.

셀프호스팅을 배울 수 없겠다는 이유는 전혀 없습니다. 하지만 아무것도 무료는 아니며, 원하는 서비스와 규모가 지불해야 할 비용을 결정한다는 점을 기억하십시오. 일부 VPS 서비스는 다른 것보다 저렴하며, @pfaffman이 작성한 여기의 목록이 결정하는 데 도움이 될 수 있습니다. 예를 들어, 저는 3개의 Discourse 사이트를 모두 Hetzner에서 운영하지만 서버 크기와 관련 비용은 다릅니다: 2개 사이트는 이중 컨테이너 설치Cloudflare CDN 뒤에 위치하며 업로드와 백업을 위해 R2 (S3 호환) 오브젝트 스토리지를 사용하고, 나머지 하나는 테스트 목적으로 표준 설치를 사용합니다. 이전에 DigitalOcean을 사용했지만 상대적으로 비쌀 수 있습니다. 그러나 표준 설치를 배우는 사람들을 위한 권장 시작점입니다(다만 저는 Hetzner가 그렇게까지 다르다고 생각하지 않으며, 대시보드를 더 선호합니다).

Discourse나 그 파트너 호스팅 회사에 비용을 지불하여 호스팅을 관리받기를 원하지 않고, 무료 티어 이상의 것이 필요하다면, 제 추천은 연구를 하고 독서를 한 후 셀프 설치를 시도하는 것입니다. app.yml 파일이 무엇이고 어떻게 편집하는지, 네임서버와 이메일 서비스를 어떻게 설정하는지 배우십시오 - 이는 셀프호스터로서 자신의 discourse 인스턴스를 구성하는 법을 배우는 시작점입니다. 일부 VPS 서비스는 테스트나 학습을 위해 짧은 기간 동안 서버를 매우 저렴하게 임대할 수 있게 해줍니다.

이 차트는 꽤 훌륭하다고 생각하며, 위 분들께서 이미 말씀하신 내용 모두에 동의합니다 (다만, 초보자가 LLM을 지원용으로 사용하는 것은 강력히 비추천합니다. LLM은 매우 빈번하게 명백한 오류를 범하기 때문이죠). 하지만 셀프호스팅(self-hosting)은 상당히 포괄적인 용어이므로, 여기서 좀 더 구체적으로 구분해 볼 필요가 있습니다.

만약 여러분이:

  • 자신의 하드웨어에서 Linux를 실행하는 데 익숙하다면 (또는 15년 전 Reddit 게시물들을 읽으며 고생하는 데 익숙하다면)
  • 빅테크 기업에 돈을 쓸 여유가 없다면
  • 24/7 안정적인 인터넷과 전력을 보장받을 수 있다면
  • ISP(인터넷 서비스 제공업체)에 의한 제한(예: 80/443 포트가 닫혀 있거나 동적 IPv4 사용 등)이 없다면
  • 기본적인 네트워크 설정(포트 포워딩)을 할 수 있다면
  • 여분 컴퓨터가 있다면 (현실적으로 4GB DDR3 메모리가 탑재된 구형 사무용 PC라도 SSD만 있으면 충분합니다)

… 그렇다면 저는 확실히 자신의 하드웨어에 호스팅하는 것을 추천합니다. 여기서는 이유를 알 수 없는 이유로 셀프호스팅이 종종 나쁜 평판을 받곤 합니다(변동성 때문일까요?) 하지만 여러분이 이를 감당할 수 있는 능력이 있다면, 꼭 한번 시도해 보시길 강력히 권합니다. 셀프호스팅은 제가 늘 사용해 온 방식이었으며, 어릴 때 클라우드를 감당할 수 없었을 때 큰 도움이 되었습니다. 지금도 저는 저렴하고 예측 가능하며, 원하는 대로 자유롭게 설정할 수 있기 때문에 로컬 서버에서 셀프호스팅을 선택합니다.

셀프호스팅에는 배워야 할 것이 많습니다. 자신의 하드웨어나 VPS에 성공적으로 설치하더라도, 여전히 해야 할 일이 더 많이 남아 있을 것입니다. 이 모든 과정을 건너뛰고 호스팅된 플랜을 선택할 수도 있지만, 비용을 절약하고 싶다면 셀프호스팅(특히 자신의 하드웨어를 이용하는 경우)은 훌륭한 선택입니다.

예를 들어 집에 있는 여분 컴퓨터에서 실행한다면, 컴퓨터를 24시간/365일 켜 두어야 하고, 아마도 Cloudflare 터널을 설정해야 할 것 아닙니까? 그래서 저는 단순히 서버를 임대하고, 도메인 이름을 등록한 다음 이메일 서버를 설정하는 쪽으로 기울고 있습니다. 처음 셀프 호스팅을 시작했을 때 용어들이 너무 많이飛び交(날아다니)어 꽤 혼란스러웠지만, Discourse에는 견고한 문서가 있고 설치가 CLI 설치자를 통해 안내되는 과정이므로, 초보자로서 설정하는 것이 그렇게 어렵지 않다고 생각합니다.

반드시 그럴 필요는 없습니다. 많은 라우터(기본 모델 및 ISP 게이트웨이 포함)에서 포트 포워딩을 지원하며, 이는 특히 리버스 프록시를 사용할 수 있는 경우 선호되는 방법입니다. 포트 포워딩을 설정할 수 없거나 네트워크 설정을 직접 다루고 싶지 않은 사람들에게만 Cloudflare 터널을 권장합니다.

이 답변은 중요한 고려 사항을 놓치고 있습니다. 공개 인터넷으로 포트가 열릴 경우 악용될 수 있는 모든 공격 벡터를 가정 방화벽이 처리할 수 있는지 확신할 수 없기 때문입니다. 일반적으로 포트에 직접 접근하도록 여는 것은 권장하지 않으며, cf tunnels와 같은 도구를 사용하여 가정용 IP가 DDoS 공격을 받거나 대부분의 다른 네트워크에서 차단되는 것을 방지하는 것이 좋습니다.

제가 UniFi 네트워크를 사용하면서 방화벽이 거의 개입 없이 자동으로 설정되고 유지되기 때문에, 이 부분을 당연하게 여겼을 수도 있습니다. 오인된 악성 시그니처(주요하게 Soulseek와 Minecraft)를 차단 해제하는 것 외에는 별다른 관리가 필요 없었거든요. Cloudflare 터널은 대부분의 ISP 관련 병목 현상을 해결하는 좋은 방법이지만, 저는 보안 목적으로 이를 사용해 본 적이 없어 그 부분에 대해 정확한 코멘트를 드리기 어렵습니다. 다만 DNS에서 오렌지 클라우드를 사용하면 DDoS 보호 등 다양한 기능이 내장되어 있어 보안이 더 강화된다는 점은 알고 있습니다.

인터넷은 위험한 곳이며, 공개 웹에 무언가를 게시하면 봇이 이를 발견하고 공격을 시도할 위험이 있습니다. CF 터널은 이러한 위협 중 일부를 방지하는 데 효과적이지만, 자동화된 봇 스캐너 트래픽을 완전히 막을 수는 없으며, 100% 안전한 프로그램이라는 것은 존재하지 않습니다.

Unifi는 합리적으로 구성된 방화벽이 수행해야 할 일을 수행합니다. 그러나 실제로 패치되지 않은 취약점이 능동적으로 악용되고 있는지, 그리고 언제 그런 일이 발생하는지는 알 수 없습니다.

주거용 인터넷 연결에서 포트를 열지 않는 데에는 그만한 이유가 있습니다. 특히 중요한 개인 데이터가 포함된 홈 랩이나 서비스를 호스팅하는 경우라면 더욱 그렇습니다. 제대로 보안되지 않은 열린 포트는 가정용 네트워크에 대한 무단 접근을 시도하는 데 사용될 수 있고, 실제로도 그렇게 됩니다.

Cloudflare Tunnels와 같은 도구를 통해 라우팅을 수행하는 장점은 가정용 네트워크를 공개적으로 바로 노출시키지 않는다는 점입니다. Cloudflare가 중개자 역할을 하며, 그들의 규모를 고려할 때 새로운 위협을 능동적으로 차단하는 필터링이 훨씬 더 효과적일 가능성이 높습니다.

우리가 말하려는 것은, 셀프 호스팅은 리눅스 시스템 관리와 보안에 대한 일정한 수준의 기술이 필요하다는 것입니다.

더 저렴한 방식으로 진행할수록 더 많은 전문 지식과 노력이 필요합니다.

마침내 돌아올 수 있었어요. 제가 가진 모든 의문점에 대해 매우 세심하고 상세하게 답변해 주신 내용을 꼼꼼히 감상하고 소화하는 데 시간이 좀 걸렸어요. 정말 도움이 되는 답변들이어서 읽는 내내 미소가 지어졌고, 많은 혼란이 해소되어 이제 많은 것들의 의미와 그것이 포함하는 내용을 진정으로 이해하게 되었어요. 정말 특별한 분들이 모인 멋진 커뮤니티네요.

남은 의문점이 몇 가지 있어요;
1) DO와 같은 VPS 제공업체들도 Discourse를 위한 매니지드 호스팅을 제공합니까?
2.1) 제 유형의 포럼에서 VPS로 Discourse를 유지보수하는 데 필요한 시간/시간대 및 지식 수준은 어느 정도인가요?
2.2) @tophee님이 “여러 이유로 인해, Discourse 포럼 관리자들은 매니지드 서버를 거의 사용하지 않습니다”라고 말씀하셨는데, 왜 그런가요? 즉흥적인 작업이 필요하지만 너무 많은 작업은 아닌 때문인가요?
3) SMTP 및 DNS 관리는 제 유형의 포럼에 대해 어느 정도의 시간/시간대 및 지식 수준을 요구하나요?

이 맥락에서는 전혀 익숙하지 않아요. 저는 튜토리얼을 따라 PC에서 프로그램을 설치하거나 문제를 해결할 때만 명령 프롬프트를 최소한으로 사용해 봤을 뿐, 제가 무엇을 하고 있는지 거의 모를 정도였어요.
@Andrew_Rowe님이 "운영하시는 포럼이 트래픽이 많지 않을 것이라는 점을 염두에 두세요. 혼자서는 절대 그럴 수 없으니까요"라고 말씀하셨는데,
이것은 제가 SEO 및 검색 가능성에 대해 가지고 있던 우려와 관련이 있어요;
4) 포럼 콘텐츠가 일정하게 유지된다고 가정해 봅시다. 무료 Discourse 호스팅과 셀프 호스팅 간에 포럼의 SEO 및 검색 가능성은 어떻게 비교될까요?
이것이 주요 차이를 초래하는 큰 요인인가요? 초보자가 비매니지드 VPS로 잘 설정한 셀프 호스팅보다 Discourse 자체의 무료 플랜이 이 측면에서 그렇게 최적화되고 앞서 있는 건가요?
아니면 이것이 큰 차이를 초래하는 요인조차 아닌 건가요?
셀프 호스팅된 Discourse를 단순히 업데이트하는 것만으로도 이 측면이 Discourse 무료 플랜과 동등한 수준을 유지할 수 있을까요?

@Lilly님, 이렇게 긴 설명을 해주셔서 정말 감사해요. 답변 속 일부 코멘트 뒤에 있는 몇 가지 가정은 제 상황에는 해당되지 않으며, 이미 답글을 작성하기 위해 읽으셨을 게시글들에서 그것들을 명확히 했어요.

:backhand_index_pointing_up: 이것은 제가 더 명확한 그림을 그려주신 여러분의 많은 도움되는 통찰력 중 하나였어요

@Lilly님이 'DigitalOcean을 사용해 본 적이 있지만 상대적으로 비쌀 수 있습니다; 그러나 표준 설치를 배우는 사람들을 위한 권장 시작점입니다’라고 말씀하셨는데,
이것은 제가 가지고 있던 또 다른 우려와 관련이 있어요; 컴퓨팅 성능 및 스펙에 대한 것이 아니라, 적절한 설정 및 유지보수에 대한 것이에요;
5) DO/Hetzner가 매우 저렴하지만(물론 정품이어야 함) VPS와 비교했을 때 상당한 차이를 제공합니까? 예를 들어 이 것들: IONOS VPS Hosting | Virtual Private Servers | Starting at $4/month
vps mart VPS Promotion 2026, Starting at $1.04/month
Interserver의 2GB RAM에 월 $3

@darkpixlz님, 답변해 주셔서 감사합니다. 자체 하드웨어에 호스팅하는 것은 저에게는 너무 많은 추가적인 부담이 될 것 같아서 고려하지 않았고, @darkpixlz님이 이 특정 옵션에 대해 제가 실제로 준비가 되어 있지 않다는 것을 더 명확히 해 주셨어요

아니라고 생각합니다.

시간은 많이 걸리지 않습니다… 무엇을 하는지 안다면요. 하지만…

이런 상태라면 VPS로 Discourse를 유지보수하는 것이 훨씬 더 어려워질 것입니다.

DNS는 꽤 간단합니다. AI의 도움을 받아서도 처리할 수 있고, 한 번 작동하면 작업은 완료되며, 올바르게 작동하는지 확인하는 온라인 도구들도 있습니다.

SMTP는 별개의 문제입니다. Discourse를 셀프 호스팅하는 많은 사람들이 서비스를 이용합니다. 이 포럼에서 추천 사항을 검색해 보세요. 저는 개인적으로 docker mail server를 사용하지만, 다이제스트 이메일을 꺼두어 이메일 트래픽이 많지는 않습니다.

아, @Andrew_Rowe 님이 말씀하신 내용과 거의 똑같네요. 답글을 달기 전에 끝까지 읽어야 했는데 정말 죄송합니다.

보통은 그렇지 않습니다.

본인이 얼마나 시간을 쏟을지에 따라 다릅니다. 저는 이걸 전업으로 한 적도 있고, 수년간 서버를 업데이트하지 않는 사람들도 봤습니다.

Mailgun이나 유사한 서비스를 설정할 수 있을 만큼 SMTP에 대해 알아야 합니다. 또한 메일과 호스트가 정상적으로 작동하기 위해 필요한 DNS 레코드를 생성할 수 있을 만큼 DNS에 대해 알아야 합니다.

SEO는 셀프 호스팅 여부를 결정하는 것과 아무런 상관이 없습니다.

기억이 맞다면, 그 이유는 커맨드 라인을 통해 업데이트나 문제를 수정하려고 할 때 항상 완전한 접근 권한을 가질 수 없기 때문이에요. 대신 이러한 작업을 프로바이더가 대신해 주거든요. 그러므로 어떤 의미에서는 모든 데이터를 완전히 소유하지 않는 셈이죠. 하지만 먼저 이 정보를 확인해 보세요. 상황이 바뀌었을 수 있으니까요.

이게 무슨 뜻인지 모르겠지만, 내가 이전에 포스트에서 뭔가 명확히 했다면, 나는 내 포스트를 작성하기 전에 그것을 읽지 않은 것 같아. 어쨌든 나는 가능한 한 최대한 자세히 작성하려고 노력했기 때문에, 당신이 필요로 했던 것보다 더 많은 정보가 포함되어 있을 수도 있고, 나도 모르겠어.

나는 이 VPS 서비스들에 대해 아는 것이 없지만, 한번 살펴봤어…

나 같으면 RAM 4GB 미만이나 2GB 스왑 파일을 만들 디스크 공간이 부족한 환경에서는 작은 포럼조차 운영하지 않을 거야.

하지만 약관과 세부 사항을 읽고 무엇을 얻게 되는지 이해해야 해. 이 서비스 중 일부는 공유 지정 IP만 제공하는데, 이는 discourse에서 작동하지 않아. 예를 들어 vps-mart.com:

따라서, 작은 Discourse 설치에 합리적인 사양을 제공하기는 하지만 나는 그들의 서비스를 사용하지 않을 거야. 공식 discourse_docker 설치는 일반적으로 웹 트래픽을 제공하고 Let’s Encrypt SSL 인증서를 자동으로 발급하기 위해 포트 80과 443에 대한 독점적 접근 권한이 필요해. 그들의 공유 IP를 사용하면 표준이 아닌 무작위 포트만 할당될 거야.

IONOS https://www.ionos.com/servers/vps에서 월 $4 구성은 12개월 약정이 필요하고 IP에 대한 세부 사항이 없으므로, 당신이 원하는 것에 대한 약관을 정말로 자세히 읽는 것이 중요해 (또한 당신이 원하지 않는 Plesk를 제공한다는 것도 알아차렸어 :face_vomiting:) :

이것은 Discourse에서 작동할 유사한 Linux 구성의 현재 Hetzner 비용이며, 전용 IP와 루트 SSH 접근 권한을 제공한다:

Hetzner의 또 다른 장점은 단순히 테스트나 시도를 원한다면 서버를 시간 단위로 임대할 수 있다는 점이야:

가장 간단한 확인 방법은 Digital Ocean에서 자체 호스팅을 위한 Discourse 공식 30분 설치 가이드를 따르는 것입니다:

이 지침을 처음 따랐을 때 DNS, SMTP, SSH 설정에 대한 사전 경험이 거의 없었지만, 바로 성공적으로 포럼을 설정할 수 있었습니다. 지금은 여러 번 해본 덕분에 이 과정이 매우 단순하게 느껴집니다.

만약 해당 포럼을 사용하지 않게 되면 나중에 삭제하면 됩니다.

문제가 발생하면 이 지원 포럼에서 자유롭게 질문할 수 있으며, 여기서도 도움을 받을 수 있는 기존 정보가 많이 있습니다.

이 단계들이 관리 가능하다고 느낀다면 자체 호스팅을 할 수 있을 것입니다. 너무 어렵거나 시간이 많이 걸린다면 관리형 호스팅을 사용하는 것이 더 나을 수 있습니다.

때로는 너무 많이 고민하기보다 직접 시도해 보면 많은 질문에 대한 답을 얻을 수 있습니다!

이 공식 Discourse 블로그 게시물을 보고 직접 시도해 보게 되었습니다:

정확한 숫자는 없지만, 상당수의 디스커스 인스턴스는 Discourse.org, Communiteq.com 및 기타 몇몇 소규모 업체에 의해 관리형 호스팅으로 운영되고 있습니다.

관리형 호스팅 제공업체가 고객에게 콘솔 접근 권한을 제공하지 않는다는 점은 사실입니다. 제공업체가 완전히 통제하지 못하는 시스템의 보안, 안정성 및 유지보수에 대해 합리적으로 책임을 질 수는 없습니다.

그러나 이것이 고객이 자신의 데이터를 소유하지 않는다는 뜻은 아닙니다. 물론 소유하고 있습니다.

저희 고객 중 일부는 가끔 지원 티켓을 열어 rails c 스크립트를 실행해 달라고 요청합니다. 우리는 스크립트를 보안 및 적절성 측면에서 검토한 후 실행하고, 요청 시 출력을 제공합니다. 직접 실행하는 것보다 처리 시간이 약간 더 걸릴 수 있지만, 대신 추가 비용 없이 추가적인 적절성 검사를 받을 수 있습니다.

관리형 호스팅을 사용하면 업데이트를 수행하는 것에 대해 걱정할 필요가 없습니다. 그 이유는 업데이트가 대신 처리되기 때문입니다. 또한 긴급 보안 업데이트는 일반적으로 각 개별 관리자가 문제를 인지하고 조치를 취하기 전에 신속하게 배포될 수 있습니다.

정말 도움이 많았습니다. @Andrew_Rowe @Lilly @pfaffman @NateDhaliwal @RGJ @traceymoko 님들, 후속 질문에 대해 명확히 설명해 주셔서 감사합니다. 이제 상황이 훨씬 명확해졌습니다. 종합적으로 고려해 볼 때, 제 목표에 필요한 기본 기능들을 얻을 수 있는 거의 유일한 방법이므로 VPS를 이용한 셀프 호스팅을 강력하게 검토하고 있습니다.

추가적인 맥락을 말씀드리자면, 웹 개발은 제 주된 업무 영역이 아닙니다. 제 주된 헌신은 제가 운영하는 작은 자선 단체에 있으며, 이 단체에 제 집중력, 시간, 노력, 그리고 돈을 최대한 쏟아부어야 합니다. 제가 가진 자원이 제한적이기 때문에, 효용을 극대화하고 효용이 낮은 곳에 에너지를 소모하는 것을 최소화하려 합니다. 그래서 이 프로젝트가 또 다른 큰 부담을 만들어서 제가 시간을 쓰지 말아야 할 곳에 시간을 빼앗길까 걱정됩니다.

웹사이트 구축 과정에서 이미 너무 많은 에너지를 소모했습니다. 그래서 또 다른 무언가를 만들어야 한다는 점이 걱정됩니다. 저는 STEM(과학, 기술, 공학, 수학) 배경이 탄탄하고 학습 능력도 좋으며 일을 해낼 수 있다는 점은 큰 불확실성이 아닙니다. 그리고 초기 구축 비용이 한 번 들더라도, 그 후에는 거의 알아서 돌아가는 시스템이라면 괜찮습니다. 하지만 정기적인 유지보수가 필요하게 된다면, 이 경로가 얼마나 많은 시간을 요구하는지에 대해서는 여전히 막막합니다. 가까운 미래에 이 일을 외주 처리할 수 있는 충분한 자원이 생길지도 모르지만, 그때 이 커뮤니티의 도움을 기억할 것입니다. 하지만 현재 저는 시간도 자원도 부족한 딜레마에 빠져 있는 상태입니다. 혼자서 이 일을 시도해 볼 생각이지만, 매우 망설여지고 있습니다.

비영리 단체라면 할인받을 수 있다고 생각합니다. 가격 페이지의 인용문을 아래에 드립니다:

50% 비영리 단체 할인을 받으려면, 정부에서 발급한 비영리 지위 및 연방세 면제 증명 서류(예: 501c3 통지서)가 필요합니다.

확인해 보세요.

여기서 많이 보셨을 것처럼, 대부분의 단골 멤버들은 매우 도움을 주려 합니다. 여러분이 직접 셀프호스팅 프로젝트를 시작하게 되면, 진행하면서 질문을 할 수 있고, 많은 분들이 팁을 주며 도와줄 것입니다. 많은 분들이 여러분과 비슷한 상황에서 시작하여 지금은 바쁜 포럼을 관리하고 호스팅하고 있습니다. 제 경우는 약간 달랐는데, 저는 평생 대부분 IT 분야에서 일해 왔고, 몇 년 전 Discourse로 호스팅되던 바쁜 포럼의 관리자 역할을 승계받았습니다. 저는 호스팅 사이트의 지원 채널을 통해 팀과 소통하고, 이곳 Meta에서 읽고 게시물을 올리면서 많은 것을 배웠습니다. 결국 저는 충분한 지식을 쌓아 그들과 함께 일하는 특권과 기쁨을 누렸고, 더 많은 것을 배울 수 있었습니다. 이후 저는 그 회사를 떠났지만, 여전히 Discourse 관련 개발 및 지원 프로젝트를 하고 있으며, 제가 관리자로 시작했던 그 특정 포럼을 이제 셀프호스팅하고 있습니다. 그 포럼은 번창하고 있으며, 예전만큼 바쁘고 커스터마이징도 더 많이 되어 있습니다.

솔직히 말하면, 가장 시간이 많이 걸리는 부분은 초기 구축과 포럼을 원하는 대로 구성하는 것입니다. 포럼이 올라가서 설정이 완료되면, 유지보수에 드는 시간은 그렇게 많지 않으며 단순히 주기적인 업데이트를 수행하는 것만으로도 충분합니다. 백업은 자동화할 수 있고, 특정 구성을 사용하면 업데이트 및 재구축 중 다운타임을 최소화할 수 있습니다. CDN과 듀얼 컨테이너(웹 앱용 하나, 데이터베이스용 하나)를 사용하면, 제 실제 재구축 다운타임은 30초에 불과합니다. 또한 사이트가 준비되면 자동으로 새로고침되도록 사용자에게 알림을 주는 스플래시 화면과 함께 전체 업데이트를 실행하는 bash 스크립트가 있습니다. 요즘은 2주에 한 번 정도 OS, Docker, Discourse를 최신 상태로 유지하는 데 제 시간 중 15분 이상을 쓰지 않습니다. 저는 서버에 ssh로 접속하여 시스템 업데이트를 수행한 후 스크립트를 실행합니다. 더 자동화할 수 있다는 것을 알고 있지만, 여전히 수동으로 직접 다루는 작업을 조금은 좋아합니다.