Egyéni domain
Telepítse az IntraCord AI-t saját egyéni domainnévvel a professzionális éles beállítás érdekében. Mostanra már képesnek kell lennie Voice Agent létrehozására és tesztelésére, ha követi az előző útmutatót a platform távoli szerveren történő beállításához a [Docker] segítségével (/deployment/docker#option-2-remote-server-deployment)
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ípus | A |
| Név/Host | voice (vagy @ gyökérdomain esetén) |
| Érték/pont | A szerver IP-címe (pl. 203.0.113.50) |
| TTL | 300 (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.
2. lépés: Gyors beállítás (ajánlott)
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 - Érvényesítse a futásidejű konfigurációt, amelyet a
IntraCord-inita.envfájlból fog lerenderelni - 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:
- Írjon kihívásfájlt a
certs/.well-known/acme-challenge/alatt - 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
- 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:
- 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)
- DNS nincs terjesztve: Várja meg a DNS-módosítások terjedését, és ellenőrizze a
nslookupsegítségével - 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:
- Ellenőrizze, hogy a tanúsítványokat megfelelően másolta-e át:
ls -laz IntraCord/certs/ - Futtassa a
./remote_up.sh --preflight-only-t aIntraCord/-ben, hogy ellenőrizze, hogy aIntraCord-initfutásidejű renderelés egyezik-e a.env-vel - 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:
- 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
- Ellenőrizze, hogy a
PUBLIC_HOST/PUBLIC_BASE_URL.envegyezik-e a domainjével, majd futtassa újra a./remote_up.shfájlt