홈으로

설치 가이드

서버에 배포하거나, 내 PC에서 바로 사용할 수 있습니다.

필요 사항

  • Ubuntu 20.04+ 또는 Debian 11+ 서버
  • Node.js 20+ (설치 스크립트에 포함)
  • 도메인 (예: mail.yourdomain.com)
  • Anthropic 또는 Google AI Studio API 키
  • Resend API 키 + 인증된 발신 도메인

1. 레포지토리 클론

서버에 SSH 접속 후 실행합니다.

git clone https://github.com/extory/mail.git ~/mail
cd ~/mail

2. 환경 변수 설정

.env.local 파일을 생성하고 API 키를 입력합니다.

cp .env.example .env.local
nano .env.local

# 아래 값들을 입력하세요:
# ANTHROPIC_API_KEY=sk-ant-...  (또는 GEMINI_API_KEY)
# RESEND_API_KEY=re_...
# SENDER_EMAIL=newsletter@yourdomain.com
# SENDER_NAME=My Newsletter
# JWT_SECRET=your-random-secret-string

3. 자동 설치 실행

nginx, SSL, pm2, Node.js를 자동으로 설치하고 설정합니다.

chmod +x infra/setup-server.sh
./infra/setup-server.sh

4. DNS 설정

도메인 관리에서 A 레코드를 추가합니다.

mail.yourdomain.com → 서버 IP 주소

5. 접속 및 가입

브라우저에서 접속합니다. 첫 번째 가입자가 관리자(Admin)가 됩니다.

URL: https://mail.yourdomain.com/signup

첫 번째 가입 → 자동으로 관리자 계정 생성
이후 가입 → 관리자의 초대가 필요

업데이트

서버에서:

cd ~/mail && ./deploy.sh

유용한 명령어

pm2 status서비스 상태 확인
pm2 logs mail로그 확인
pm2 restart mail재시작
pm2 stop mail중지

계정 및 초대

  1. 1/signup 에 접속하면 'Create Admin Account' 화면이 표시됩니다.
  2. 2첫 번째 가입자가 자동으로 관리자(Admin)가 됩니다. 초대 코드가 필요 없습니다.
  3. 3관리자 로그인 후 사이드바의 '초대 관리' 메뉴에서 이메일을 입력하고 초대합니다.
  4. 4'링크 복사' 버튼을 클릭하면 초대 링크가 클립보드에 복사됩니다.
  5. 5초대받은 사용자가 해당 링크로 접속하면 초대 코드와 이메일이 자동 입력됩니다.
  6. 6초대 없이는 가입할 수 없습니다.