시작하기

내 서버에서 Antimatter 실행하기

파일 하나, 명령어 세 개, 약 10분이면 됩니다. Docker가 설치된 Linux 서버라면 어디서든 Antimatter와 데이터베이스, 파일 스토리지, GIF 서비스를 실행할 수 있습니다.

10분 만에 실행하기

Docker와 Compose 플러그인이 설치되어 있고, CPU 코어 2개 이상과 메모리 4 GB 이상을 갖춘 Linux 서버가 필요합니다.

1. Compose 파일 내려받기

$ mkdir antimatter && cd antimatter
$ curl -fsSLO https://antimatter.chat/compose.yaml

2. 무작위 비밀번호로 설정 파일 만들기

$ cat > .env <<EOF
SITE_URL=http://localhost:8065
POSTGRES_PASSWORD=$(openssl rand -hex 24)
S3_SECRET_KEY=$(openssl rand -hex 24)
GIFS_API_KEY=$(openssl rand -hex 24)
EOF

SITE_URL은 사용자가 접속할 주소로 설정하세요. 예를 들어 로컬 네트워크라면 http://192.168.1.20:8065처럼 지정합니다.

3. 실행하기

$ docker compose up -d

처음 실행할 때는 데이터베이스를 만드느라 1~2분 정도 걸립니다. 그런 다음 브라우저에서 SITE_URL을 열고 계정을 만드세요. 처음 만든 계정이 시스템 관리자가 되며, 설정 과정에서 첫 커뮤니티를 만드는 방법을 안내합니다.

내 도메인과 HTTPS로 운영하기

도메인의 DNS 레코드가 서버를 가리키도록 설정하고, 80번과 443번 포트를 연 다음, .env에 도메인을 추가하세요.

$ cat >> .env <<EOF
DOMAIN=chat.example.com
EOF
$ sed -i 's|^SITE_URL=.*|SITE_URL=https://chat.example.com|' .env
$ docker compose --profile https up -d

Caddy가 Let's Encrypt에서 인증서를 발급받고 자동으로 갱신합니다.

실행되는 구성 요소

  • antimatter: 서버와 앱(메모, 화이트보드, 음성 채널, 통화, 투표 등). 디스크에 아무것도 저장하지 않습니다. 설정은 데이터베이스에, 파일은 스토리지 서비스에 있으므로 컨테이너를 언제든 교체할 수 있습니다.
  • postgres: 데이터베이스.
  • files: 업로드한 파일을 저장하는 S3 호환 스토리지 RustFS.
  • gifs: 기본 스티커 팩이 포함된 Antimatter의 GIF·스티커 서비스.
  • https: Caddy. https 프로필을 사용할 때만 실행됩니다.

데이터베이스, 스토리지, GIF 서비스는 Antimatter만 접근할 수 있는 사설 네트워크에 있습니다.

GIF 선택기가 비어 있다면 시스템 콘솔 › 플러그인 › GIFs에서 서비스 URL을 http://gifs:8080/v2로, API 키를 .env의 GIFS_API_KEY 값으로 설정하세요.

업그레이드와 백업

# 최신 이미지로 업그레이드
$ docker compose pull && docker compose up -d
# 데이터베이스 백업
$ docker compose exec postgres pg_dump -U antimatter antimatter > antimatter.sql

files 볼륨도 함께 백업하거나, S3 도구로 스토리지를 복제하세요. nginx와 자체 인증서를 사용하는 구성은 antimatter-docker의 프로덕션용 파일을 참고하세요.

릴리스 아카이브로 설치하기

  1. PostgreSQL 데이터베이스와 사용자를 준비합니다.
  2. 아카이브(antimatter-<os>-<arch>.tar.gz)를 /opt/antimatter 등에 풀고, config/config.json의 SqlSettings.DataSource(또는 AM_SQLSETTINGS_DATASOURCE 환경 변수)가 데이터베이스를 가리키도록 설정합니다.
  3. 권한이 없는 일반 사용자로 bin/antimatter를 실행해 서버를 시작하고 http://localhost:8065를 엽니다. 처음 만든 계정이 시스템 관리자가 됩니다.

bin/amctl로 실행 중인 서버를 명령줄에서 관리할 수 있습니다(서버에서 직접 실행할 때는 ServiceSettings.EnableLocalMode를 켜고 bin/amctl --local 사용).

다음 단계

  • 통화: 음성과 영상이 서버에 도달하도록 통화 포트(기본값 UDP 및 TCP 8443)를 여세요.
  • 이메일: 초대와 알림을 보내려면 SMTP를 구성하세요.
  • AI: 에이전트 설정에서 모델을 추가하세요. 직접 운영하는 서버를 포함해 OpenAI 호환 API라면 무엇이든 쓸 수 있습니다.
  • 음성과 번역: 통화 녹취, 소리 내어 읽기, 자동 번역이 직접 운영하는 음성 인식·음성 합성·번역 모델을 사용하도록 설정하세요.