docs/teams/teams_concepts.md
This page explores the key concepts of Livebook Teams.
A deployment group serves as an organizational and configuration layer for your app servers and Livebook applications. Think of it as defining a "deployment context"—a set of rules, configurations, and boundaries that determine where your apps are deployed and how they can be accessed.
A deployment group serves multiple purposes:
Logical separation: A deployment group provides logical separation. One example is using different deployment groups for different environments, like staging and production. Or you can use different deployment groups for different departments of a company, like engineering and customer support.
Grouping app servers: A deployment group contains one or more app servers.
IAM Configuration: A deployment group contains the Identity and Access Management (IAM) configuration that is applied to all app servers belonging to it.
A Livebook app server is a Livebook instance configured to act as an application server where you can deploy Livebook apps via Livebook Teams.
It's the same Livebook you can run on your machine, but with a few environment variable configurations that make that instance connect to an organization from Livebook Teams.
Since it's a standard Livebook instance, you can also use it to create, open, and run regular notebooks in addition to serving as a deployment target for apps.
When you start an app server, it:
This architecture means app servers are essentially "deployment targets" - they don't store apps themselves but receive and run them as instructed by Livebook Teams.
A deployment group can have one or more app servers, allowing you to scale horizontally. An app server belongs to exactly one deployment group.
Understanding deployment groups and app servers individually is important, but their real power comes from how they work together: