Přejít na obsah
PentAGI
Nasazení

Produkce

Provoz PentAGI pro tým — hardening, izolace, Podman a více instancí.

Kontrolní seznam

  • Nastavte všechna pověření, včetně COOKIE_SIGNING_SALT, před prvním spuštěním — viz Zabezpečení. Instalátor generuje sůl a hesla služeb, ale ne hesla administrátora Langfuse a Grafana: nastavte LANGFUSE_INIT_USER_PASSWORD, password v šabloně před prvním spuštěním Langfuse a změňte výchozí admin / admin Grafany po jejím prvním spuštění. Na běžící instalaci změňte hesla PostgreSQL a Neo4j přímo v databázích dříve, než je změníte v .env.
  • Použijte platný certifikát a stabilní PUBLIC_URL.
  • Za reverzním proxy nastavte TRUSTED_PROXIES na adresu nebo CIDR proxy. V opačném případě všichni uživatelé sdílejí adresu proxy a 30 neúspěšných přihlášení během 5 minut zablokuje přístup všem na 15 minut.
  • Přesuňte spouštění tool na vyhrazený worker node.
  • Povolte observabilitu, abyste mohli sledovat náklady a selhání.
  • Udržujte knowledge graph a Langfuse v soukromé síti.

Podman

PentAGI funguje na Podmanu i na Dockeru. V režimu bez oprávnění root vyžaduje služba scraper dodatečnou konfiguraci, protože kontejnery bez oprávnění root nemohou svazovat privilegované porty; README repozitáře popisuje nastavení s oprávněním root i bez něj.

Více instancí (TENANT_ID)

Pro samostatnou instalaci ponechte TENANT_ID prázdné a na existující instalaci jej také ponechte prázdné: jeho pozdější nastavení přesune instanci do nového, prázdného schématu, které začíná s výchozím účtem [email protected], a její flow, uživatelé a nastavení se již nezobrazují. Nastavte jej u instancí, které přidáváte, pokud několik instancí PentAGI sdílí externí prostředky, například jeden server PostgreSQL, jeden worker node, jednu instanci Neo4j nebo Langfuse:

OblastVliv TENANT_ID=acme
PostgreSQLFunguje ve schématu acme namísto public
Pracovní kontejneryPojmenovány jako acme-pentagi-terminal-<flow>
Knowledge graphID skupin se změní na acme-flow-<id>
AutentizaceKlíče cookies a tokenů zahrnují tenanta
TelemetrieData Langfuse a OpenTelemetry jsou označena tenantem

Hodnota musí odpovídat ^[a-z][a-z0-9_]{0,31}$. Prostředky hostitele nejsou odděleny jmennými prostory. Instance na jednom serveru potřebují vlastní DATA_DIR a publikované porty. Instance, jejichž sandboxes běží na stejném Docker hostu, na jednom serveru nebo sdíleném worker node, potřebují vlastní DOCKER_PORTS_BASE a, pokud je nastaven, vlastní DOCKER_WORK_DIR; v opačném případě si jejich sandboxes nárokují stejné porty a flow se nepodaří spustit. Každá base zahajuje okno 2000 portů, ve výchozím nastavení 28000, takže použijte například 28000 a 30000.

Naposledy aktualizováno