İçeriğe atla
PentAGI
Dağıtım

Üretim

PentAGI'yi bir ekip için çalıştırma — güçlendirme, yalıtım, Podman ve birden fazla örnek.

Kontrol Listesi

  • İlk başlatmadan önce, COOKIE_SIGNING_SALT dahil olmak üzere tüm kimlik bilgilerini ayarlayın — bkz. Güvenlik. Yükleyici salt değerini ve hizmet parolalarını oluşturur, ancak Langfuse ve Grafana yönetici parolalarını oluşturmaz: Langfuse ilk kez başlamadan önce şablonda LANGFUSE_INIT_USER_PASSWORD ve password değerlerini ayarlayın ve Grafana'nın varsayılan admin / admin bilgisini ilk başlatmasından sonra değiştirin. Çalışan bir kurulumda, .env içindeki parolaları değiştirmeden önce PostgreSQL ve Neo4j parolalarını veritabanları içinde değiştirin.
  • Gerçek bir sertifika ve kararlı bir PUBLIC_URL sunun.
  • Bir ters proxy arkasında, TRUSTED_PROXIES değerini proxy'nin adresine veya CIDR bloğuna ayarlayın. Aksi takdirde her kullanıcı proxy'nin adresini paylaşır ve 5 dakika içinde 30 başarısız oturum açma denemesi herkesi 15 dakika boyunca kilitleyerek dışarıda bırakır.
  • Tool yürütmelerini özel bir worker node'a taşıyın.
  • Maliyetleri ve hataları takip edebilmeniz için gözlemlenebilirliği etkinleştirin.
  • Knowledge graph'ı ve Langfuse'u özel bir ağda tutun.

Podman

PentAGI, Docker'ın yanı sıra Podman üzerinde de çalışır. Köksüz (rootless) modda, köksüz konteynerler ayrıcalıklı bağlantı noktalarına bağlanamadığından scraper hizmeti ek yapılandırma gerektirir; depo README dosyasında hem köksüz hem de köklü (rootful) kurulumlar açıklanmıştır.

Birden fazla örnek (TENANT_ID)

Tek bir kurulum için TENANT_ID alanını boş bırakın ve mevcut bir kurulumda da boş tutun: Bu değeri daha sonra ayarlamak, örneği varsayılan [email protected] hesabıyla başlayan yeni, boş bir şemaya taşır; bu durumda flow'lar, kullanıcılar ve ayarlar artık görünmez. Birden fazla PentAGI örneği tek bir PostgreSQL sunucusu, tek bir worker node, tek bir Neo4j veya tek bir Langfuse gibi dış kaynakları paylaştığında, eklediğiniz örneklerde bu değeri ayarlayın:

AlanTENANT_ID=acme Etkisi
PostgreSQLpublic yerine acme şeması içinde çalışır
İşçi konteynerleriacme-pentagi-terminal-<flow> olarak adlandırılır
Knowledge graphGrup kimlikleri acme-flow-<id> haline gelir
Kimlik DoğrulamaÇerez ve belirteç anahtarları tenant'ı içerir
TelemetriLangfuse ve OpenTelemetry verileri tenant ile etiketlenir

Değer, ^[a-z][a-z0-9_]{0,31}$ ile eşleşmelidir. Ana bilgisayar kaynakları ad alanına sahip değildir. Bir sunucudaki örneklerin kendi DATA_DIR ve yayımlanan bağlantı noktaları olmalıdır. Sandbox'ları aynı Docker host üzerinde, tek bir sunucuda veya paylaşılan bir worker node üzerinde çalışan örneklerin kendi DOCKER_PORTS_BASE değerine ve ayarlanmışsa kendi DOCKER_WORK_DIR değerine ihtiyacı vardır; aksi takdirde sandbox'ları aynı bağlantı noktalarını talep eder ve flow'lar başlatılamaz. Her taban, varsayılan olarak 28000 olan 2000 bağlantı noktasından oluşan bir aralık başlatır; bu nedenle örneğin 28000 ve 30000 kullanın.

Son güncelleme tarihi: