Începe acum

Rulează Antimatter pe propriul tău server

Un fișier, trei comenzi, aproximativ zece minute: Antimatter, cu baza de date, spațiul de stocare pentru fișiere și serviciul de GIF-uri, pe orice server Linux cu Docker.

Gata de folosire în zece minute

Ai nevoie de un server Linux cu Docker și pluginul Compose, cu cel puțin 2 nuclee de procesor și 4 GB de memorie.

1. Descarcă fișierul compose

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

2. Creează fișierul de setări, cu parole aleatorii

$ 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

Setează SITE_URL la adresa pe care o vor folosi oamenii, de exemplu http://192.168.1.20:8065 într-o rețea locală.

3. Pornește-l

$ docker compose up -d

Prima pornire durează un minut sau două, cât timp se creează baza de date. Apoi deschide SITE_URL în browser și creează-ți contul: primul cont devine administrator de sistem, iar asistentul de configurare te ghidează la crearea primei comunități.

Cu propriul domeniu și HTTPS

Direcționează o înregistrare DNS a domeniului tău către server, deschide porturile 80 și 443 și adaugă domeniul în .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 obține un certificat de la Let's Encrypt și îl reînnoiește automat.

Ce rulează

  • antimatter: serverul, cu aplicațiile sale (note, table albe, canale vocale, apeluri, sondaje și celelalte). Nu păstrează nimic pe disc: setările sunt în baza de date, iar fișierele în serviciul de stocare, așa că containerul poate fi înlocuit oricând.
  • postgres: baza de date.
  • files: RustFS, stocare compatibilă cu S3 pentru fișierele încărcate.
  • gifs: serviciul de GIF-uri și stickere al Antimatter, cu un pachet de stickere pentru început.
  • https: Caddy, doar cu profilul https.

Baza de date, spațiul de stocare și serviciul de GIF-uri se află într-o rețea privată, accesibilă doar pentru Antimatter.

Dacă selectorul de GIF-uri rămâne gol, deschide Consola de sistem › Pluginuri › GIFs și setează URL-ul serviciului la http://gifs:8080/v2, iar cheia API la valoarea GIFS_API_KEY din fișierul tău .env.

Actualizări și copii de rezervă

# actualizare la cele mai noi imagini
$ docker compose pull && docker compose up -d
# copie de rezervă a bazei de date
$ docker compose exec postgres pg_dump -U antimatter antimatter > antimatter.sql

Fă copii de rezervă și pentru volumul files sau replică spațiul de stocare cu orice instrument S3. Pentru o configurare cu nginx și propriile certificate, vezi fișierele de producție din antimatter-docker.

Cu o arhivă de release

  1. Creează o bază de date PostgreSQL și un utilizator pentru ea.
  2. Extrage arhiva (antimatter-<os>-<arch>.tar.gz), de exemplu în /opt/antimatter, și configurează SqlSettings.DataSource din config/config.json (sau variabila de mediu AM_SQLSETTINGS_DATASOURCE) astfel încât să indice baza de date.
  3. Pornește serverul cu bin/antimatter, ca utilizator neprivilegiat, și deschide http://localhost:8065. Primul cont creat devine administrator de sistem.

Cu bin/amctl poți administra din linia de comandă un server care rulează (bin/amctl --local pe serverul însuși, cu ServiceSettings.EnableLocalMode).

Pașii următori

  • Apeluri: deschide portul pentru apeluri (UDP și TCP 8443, implicit), ca vocea și imaginea video să ajungă la server.
  • E-mail: configurează SMTP pentru invitații și notificări.
  • AI: adaugă un model în setările Agents; funcționează orice API compatibil cu OpenAI, inclusiv un server pe care îl rulezi tu.
  • Vorbire și traducere: conectează transcrierea apelurilor, citirea cu voce tare și traducerea automată la modele de recunoaștere vocală, sinteză vocală și traducere pe care le rulezi tu.