Ugrás a fő tartalomhoz

Egyéni domain

Telepítse az IntraCord AI-t saját custom domainnel production környezetben. Ennek előfeltétele, hogy az előző útmutató alapján Dockerrel beállítsa a platformot egy remote serveren, és ott már létre tudjon hozni, illetve tesztelni tudjon Voice Agentet.

Mi az egyéni tartomány telepítése?

Az egyéni tartománytelepítés lehetővé teszi, hogy az IntraCord AI személyre szabott tartománynévvel (például voice.yourcompany.com) futtasson az IP-címek használata helyett. Ez a beállítás a következőket tartalmazza:

  • Egyéni domain: Hozzáférés az alkalmazáshoz egy emlékezetes domain néven keresztül
  • Automatikus SSL: Megfelelő SSL-tanúsítványok a Let's Encrypt vagy hasonló szolgáltatóktól
  • Professzionális beállítás: Gyártásra kész konfiguráció üzleti használatra
  • Egyszerű megosztás: Oszd meg a tiszta URL-t csapatoddal és ügyfeleiddel

Előfeltételek

Mielőtt elkezdené, győződjön meg arról, hogy rendelkezik:

  • Az Ön tulajdonában lévő domain név (pl. yourcompany.com)
  • Hozzáférés a domain DNS-beállításaihoz (általában a domainregisztrátoron keresztül)
  • Az IntraCord AI már fut a szerverén a távoli telepítés útmutatón keresztül
  • A szerver nyilvános IP-címe

1. lépés: A DNS-rekordok konfigurálása

Létre kell hoznia egy DNS-rekordot, amely a tartományt a szerver IP-címére irányítja.

Adjon hozzá egy A rekordot

Jelentkezzen be domainregisztrátorába vagy DNS-szolgáltatójába, és adjon hozzá egy A rekordot:

BeállításÉrték
TípusA
Név/Hostvoice (vagy @ gyökérdomain esetén)
Érték/pontA szerver IP-címe (pl. 203.0.113.50)
TTL300 (vagy alapértelmezett)

Ellenőrizze a DNS terjedését

A folytatás előtt ellenőrizze, hogy a domain a szerverére mutat-e:

nslookup voice.yourcompany.com

A válaszban látnia kell a szerver IP-címét.

Miután beállította a DNS-t, futtassa az automatikus beállítási parancsfájlt, amely kezeli a többit.

curl -o setup_custom_domain.sh https://raw.githubusercontent.com/IntraCord-hq/IntraCord/main/scripts/setup_custom_domain.sh && chmod +x setup_custom_domain.sh && sudo ./setup_custom_domain.sh

A szkript a következőket fogja kérni:

  • Az Ön domain neve
  • E-mail cím a Let's Encrypt értesítésekhez

Ez automatikusan:

  • Ellenőrizze a DNS-konfigurációt
  • Telepítse a Certbotot
  • Hozzon létre Let's Encrypt SSL-tanúsítványokat
  • Frissítse a kanonikus nyilvános gazdagép/alap URL-beállításokat a .env-ben
  • Ellenőrizze a runtime configot, amelyet az IntraCord-init a .env fájlból renderel
  • Az automatikus tanúsítvány megújítás konfigurálása
  • Indítsa újra az IntraCord szolgáltatásokat az ellenőrzött indítási csomagolón keresztül

Ha elkészült, jelentkezése elérhető lesz a https://voice.yourcompany.com címen.


Kézi beállítás

Ha inkább mindent manuálisan szeretne konfigurálni, kövesse ezeket a lépéseket az automatizált szkript használata helyett.

Telepítse a Certbotot

A Certbot a hivatalos Let's Encrypt kliens, amely automatizálja az SSL tanúsítvány generálását.

Ubuntu/Debian:

sudo apt update
sudo apt install certbot -y

Amazon Linux/RHEL:

sudo yum install certbot -y

Irányítsa a .env-t a domainjében

Frissítse a .env-t, hogy a kanonikus távoli beállítások az Ön domainjét használhassák – a IntraCord-init beolvassa ezeket az nginx server_name megjelenítéséhez. Cserélje le a voice.yourcompany.com-t a tényleges domainjére:

cd IntraCord
sed -i "s/^PUBLIC_HOST=.*/PUBLIC_HOST=voice.yourcompany.com/" .env
sed -i "s|^PUBLIC_BASE_URL=.*|PUBLIC_BASE_URL=https://voice.yourcompany.com|" .env

Indítsa el a szolgáltatásokat, hogy az nginx válaszolhasson az ACME kihívására

Hozza fel a stacket (vagy hozza létre újra) az ellenőrzött wrapper scripttel. Az nginx a Let's Encrypt HTTP-01 kihívást szolgálja ki a certs/.well-known/acme-challenge/-ről a 80-as porton, tehát a stacknek futnia kell a kiadás során – nem kell megállítani:

./remote_up.sh

SSL-tanúsítvány létrehozása (webroot)

A tanúsítvány kiadása a futó nginx által kiszolgált webroot kihívással:

sudo certbot certonly --webroot -w "$(pwd)/certs" -d voice.yourcompany.com

A Certbot:

  1. Írjon kihívásfájlt a certs/.well-known/acme-challenge/ alatt
  2. Kérje meg a Let's Encrypt alkalmazást, hogy HTTP-n keresztül (80-as port) töltse le, hogy ellenőrizhesse a tartomány felügyeletét
  3. Tárolja a tanúsítványt a /etc/letsencrypt/live/voice.yourcompany.com/ helyen

Másolja ki a tanúsítványt és töltse be

Másolja a kiadott tanúsítványt a certs/ nginx reads könyvtárába, majd indítsa újra az nginxet a betöltéshez:

sudo cp /etc/letsencrypt/live/voice.yourcompany.com/fullchain.pem certs/local.crt
sudo cp /etc/letsencrypt/live/voice.yourcompany.com/privkey.pem certs/local.key
sudo chmod 644 certs/local.crt certs/local.key
sudo docker compose --profile remote restart nginx

Hozzáférés az alkalmazásához

Jelentkezése most elérhető:

https://voice.yourcompany.com

Látnia kell egy érvényes SSL-tanúsítványt (zöld lakat) a böngészőjében.

A tanúsítvány megújításának beállítása

A Titkosított tanúsítványok 90 nap után lejárnak. Állítsa be az automatikus megújítást.

Hozzon létre egy megújítási hook szkriptet, amely másolja az új tanúsítványokat:

sudo nano /etc/letsencrypt/renewal-hooks/deploy/IntraCord-reload.sh

Adja hozzá a következő tartalmat (szükség szerint cserélje ki az elérési utat):

#!/bin/bash
# Copy renewed certificates to IntraCord certs directory
cp /etc/letsencrypt/live/voice.yourcompany.com/fullchain.pem /home/ubuntu/IntraCord/certs/local.crt
cp /etc/letsencrypt/live/voice.yourcompany.com/privkey.pem /home/ubuntu/IntraCord/certs/local.key
chmod 644 /home/ubuntu/IntraCord/certs/local.crt /home/ubuntu/IntraCord/certs/local.key

# Restart nginx to load new certificates
cd /home/ubuntu/IntraCord
docker compose --profile remote restart nginx

Tegye végrehajthatóvá a szkriptet:

sudo chmod +x /etc/letsencrypt/renewal-hooks/deploy/IntraCord-reload.sh

Tesztelje, hogy működik-e a megújítás:

sudo certbot renew --dry-run

Hibaelhárítás

A tanúsítványgenerálás sikertelen

Ha a Certbot nem tud tanúsítványt generálni:

  1. A 80-as port blokkolva: Győződjön meg arról, hogy a 80-as port nyitva van a tűzfalban, és elérhető az internetről. A webroot áramlással az nginx-nek futnia kell, és a 80-as porton kell kiszolgálnia a kihívást (ne állítsa le a stacket)
  2. DNS nincs terjesztve: Várja meg a DNS-módosítások terjedését, és ellenőrizze a nslookup segítségével
  3. Drátakorlátok: A Let's Encryptnek vannak sebességkorlátai. Ha túllépte ezeket, várjon, mielőtt újra próbálkozna

SSL-tanúsítvány-hibák a böngészőben

Ha SSL-hibákat lát a beállítás után:

  1. Ellenőrizze, hogy a tanúsítványokat megfelelően másolta-e át: ls -laz IntraCord/certs/
  2. Futtassa a ./remote_up.sh --preflight-only parancsot az IntraCord/ könyvtárban, és ellenőrizze, hogy az IntraCord-init runtime renderelése megfelel-e a .env tartalmának
  3. Indítsa újra az nginx tárolót: sudo docker compose --profile remote restart nginx

WebRTC csatlakozási problémák

Ha a hanghívások nem kapcsolódnak össze a domain beállítása után:

  1. Győződjön meg arról, hogy a 3478-as, 5349-es és UDP 49152-49200-as TCP/UDP portok továbbra is nyitva vannak
  2. Ellenőrizze, hogy a PUBLIC_HOST / PUBLIC_BASE_URL .env egyezik-e a domainjével, majd futtassa újra a ./remote_up.sh fájlt