Inizia ora

Installa Antimatter sul tuo server

Un file, tre comandi, una decina di minuti: Antimatter con il suo database, il suo archivio di file e il suo servizio GIF, su qualsiasi server Linux con Docker.

Operativo in dieci minuti

Ti serve un server Linux con Docker e il relativo plugin Compose, 2 core di CPU e almeno 4 GB di memoria.

1. Scarica il file compose

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

2. Crea le impostazioni, con password casuali

$ 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

Imposta SITE_URL sull'indirizzo che useranno le persone, ad esempio http://192.168.1.20:8065 in una rete locale.

3. Avvialo

$ docker compose up -d

Il primo avvio richiede un paio di minuti, il tempo di creare il database. Poi apri SITE_URL nel browser e crea il tuo account: il primo account diventa l'amministratore di sistema, e la procedura guidata ti accompagna nella creazione della tua prima community.

Con il tuo dominio e HTTPS

Punta un record DNS del tuo dominio verso il server, apri le porte 80 e 443 e aggiungi il dominio a .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 ottiene un certificato da Let's Encrypt e lo rinnova automaticamente.

Che cosa viene eseguito

  • antimatter: il server, con le sue app (note, lavagne, canali vocali, chiamate, sondaggi e le altre). Non conserva nulla su disco: le impostazioni sono nel database e i file nel servizio di archiviazione, quindi il container si può sostituire in qualsiasi momento.
  • postgres: il database.
  • files: RustFS, un'archiviazione compatibile con S3 per i file caricati.
  • gifs: il servizio di GIF e sticker di Antimatter, con un pacchetto di sticker iniziale.
  • https: Caddy, solo con il profilo https.

Il database, l'archiviazione e il servizio GIF si trovano su una rete privata raggiungibile solo da Antimatter.

Se il selettore delle GIF resta vuoto, apri Console di Sistema › Plugin › GIFs e imposta l'URL del servizio su http://gifs:8080/v2 e la chiave API sul valore di GIFS_API_KEY del tuo file .env.

Aggiornamenti e backup

# aggiorna alle immagini più recenti
$ docker compose pull && docker compose up -d
# esegui il backup del database
$ docker compose exec postgres pg_dump -U antimatter antimatter > antimatter.sql

Esegui anche il backup del volume files, oppure replica l'archiviazione con qualsiasi strumento S3. Per una configurazione con nginx e certificati tuoi, consulta i file di produzione in antimatter-docker.

Con un archivio di release

  1. Prepara un database e un utente PostgreSQL.
  2. Estrai l'archivio (antimatter-<os>-<arch>.tar.gz), ad esempio in /opt/antimatter, e fai puntare SqlSettings.DataSource in config/config.json (o la variabile d'ambiente AM_SQLSETTINGS_DATASOURCE) al database.
  3. Avvia il server con bin/antimatter, con un utente senza privilegi, e apri http://localhost:8065. Il primo account creato diventa l'amministratore di sistema.

bin/amctl gestisce un server in esecuzione dalla riga di comando (bin/amctl --local sul server stesso, con ServiceSettings.EnableLocalMode).

Prossimi passi

  • Chiamate: apri la porta delle chiamate (8443 UDP e TCP per impostazione predefinita) perché l'audio e il video raggiungano il server.
  • Email: configura l'SMTP per gli inviti e le notifiche.
  • IA: aggiungi un modello nelle impostazioni degli agenti; funziona qualsiasi API compatibile con OpenAI, anche un server che gestisci tu.
  • Voce e traduzione: collega la trascrizione delle chiamate, la lettura ad alta voce e la traduzione automatica a modelli di riconoscimento vocale, di sintesi vocale e di traduzione che gestisci tu.