Discourse 설치하기

오픈소스 커뮤니티 솔루션으로 유명한 Discourse를 설치해봤습니다.

설치 환경

제 블로그, 마스토돈과 기타 등등을 돌리고 있는 홈서버가 있습니다. Discourse를 설치하기 위한 외부 접속 및 컨테이너 호스트는 준비된 상태에서 시작했습니다.

  • Cloudflare에 도메인 연결을 위한 DNS 설정
  • SSL 처리 및 포트포워딩을 위한 Nginx Proxy Manager
  • 컨테이너 호스트

등이 이미 준비된 상태였습니다.

설치 진행

Discourse를 사용하기로 결정하고, 설치에 대한 도움말을 좀 얻어볼까하고 검색해보니 생각보다 자료가 많지는 않았습니다. 막상 진행해보니 크게 복잡한 것도 없었구요. 대표적으로 참조한 링크 두곳은 다음과 같습니다.

  • https://blog.zarathu.com/posts/2023-11-10-discourse1/
  • https://github.com/discourse/discourse/blob/main/docs/INSTALL-cloud.md

설명서(예제)에서는 /var 아래에 discourse 디렉토리에 관련 데이터를 보관하는 형태입니다. 제 경우는 /opt 아래에 컨테이너 서비스들을 다 모아 놓은 상태라 /opt로 변경해서 진행했습니다.

제 환경의 경우 이미 다른 서비스들이 동작 중인 상태라 discourse-setup을 사용할 수는 없는 상태였습니다. 그래서 다음과 같이 예제 .yml 파일을 복사해서 내용을 수정하는 형태로 진행했습니다.

이때 주의할 것은 .yml 파일이 위치하는 경로입니다. discourse 디렉토리 아래의 container 아래에 위치해야합니다.

sudo -s
git clone https://github.com/discourse/discourse_docker.git /opt/discourse
cd /opt/discourse
chmod 700 containers

# 기존에 80 포트 사용 중이라 discourse-setup 동작 안함
cp /opt/discourse/samples/standalone.yml /opt/discourse/container/discourse.yml

discourse.yml에서 다음과 같은 부분을 제 환경에 맞게 수정했습니다. 아래 내용은 수정한 부분만 정리한 것입니다.

expose:
  - "2080:80"   # http
    #  - "443:443" # https

  DISCOURSE_HOSTNAME: 'linuxer.kr'
  DISCOURSE_DEVELOPER_EMAILS: 'sysop@linuxer.kr'

  DISCOURSE_SMTP_ADDRESS: smtp.gmail.com
  DISCOURSE_SMTP_PORT: 587
  DISCOURSE_SMTP_USER_NAME: xxxxxxxxxx
  DISCOURSE_SMTP_PASSWORD: "xxxxxxxxxx"
  #DISCOURSE_SMTP_ENABLE_START_TLS: true           # (optional, default: true)
  DISCOURSE_SMTP_DOMAIN: linuxer.kr    # (required by some providers)
  DISCOURSE_NOTIFICATION_EMAIL: sysop@linuxer.kr    # (address to send notifications from)

volumes:
  - volume:
      host: /opt/discourse/shared/standalone
      guest: /shared
  - volume:
      host: /opt/discourse/shared/standalone/log/var-log
      guest: /var/log

.yml 파일 수정이 끝나고 다음 명령을 실행하면 5분 정도 빌드 작업이 진행됩니다. 이건 네트워크, 서버 성능에 따라 좀 차이가 날겁니다. 제 경우 인터넷이 느려서 컨테이너 이미지 다운로드도 좀 걸리더라구요. ㅋ

/opt/discourse/launcher rebuild discourse

사이트 구성 진행

설정한 홈페이지에 접속하면 초기 구성을 시작하는 화면이 나옵니다.

한번에 잘되니 기분 좋습니다 ㅋ

초기 설정 단계에서 하나 주의할 것은 Admin 계정의 최소 암호 길이가 15자입니다.

15자 이상으로 암호 잘(?) 설정하고 나면 그림과 같은 확인 메일이 오는 것도 확인할 수 있습니다.

이제 설치는 했으니 시간 날때마다 조금씩 꾸며봐야겠습니다!

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다

You May Also Like
Read More

ComplianceASCode README.md

출처: https://github.com/ComplianceAsCode/content/blob/master/README.md EX415 시험을 준비하면서 OpenSCAP을 처음 사용해보고 있습니다. 프로파일 소스 찾다가 알게된 여기가 본진(?) 같아 README.md를 기계번역해서…
Read More

OpenSCAP의 profile 정보

OpenSCAP을 Lab 연습하다 통해서 처음 접해봤습니다. 사용 가능한 profile들이 다양했고, 각 프로파일의 점검항목(체크리스트)에 대한 구체적인 내용이 궁금해졌습니다. cli에서…
Read More

VirtualMachineInstanceMigrations RBAC 강화

KubeVirt Blog를 보다가 관심 가는 글이 보여서 AI번역+약간 교정해 보았습니다.출처: https://kubevirt.io/2025/Hardening-VMIM.html 컨텍스트 VM 라이브 마이그레이션 요청은 VirtualMachineInstanceMigration 인스턴스로 표현됩니다.…