Architecture

Phoenix running on your virtual private cloud
SQLite
By default, Phoenix uses SQLite, storing data in~/.phoenix/ or the directory specified by the PHOENIX_WORKING_DIR environment variable. This allows for simple deployments using a volume mount, making it easy to get started without additional database setup.
PostgreSQL
For production and scalable deployments, Phoenix supports PostgreSQL. Configure the PHOENIX_SQL_DATABASE_URL environment variable to connect Phoenix to your PostgreSQL instance.See the SQLite and PostgreSQL sections for details.
Deployment Options
Phoenix can be deployed using several methods, including Docker and Kubernetes. Choose the option that best fits your infrastructure and operational requirements.For other ways to run Phoenix, including Phoenix Cloud, see Phoenix Deployments.
Configure Phoenix
- See available ports to run Phoenix
- Customize Phoenix using environment variables
Setup Authentication
- Setup authentication
- Configuring OAuth2 identity providers
Images
This table lists the images we publish that can be used to run Phoenix.| Image Tag | Description |
|---|---|
arizephoenix/phoenix:latest | Latest released version of Phoenix using root permissions. |
arizephoenix/phoenix:latest-nonroot | Latest released version of Phoenix using nonroot permissions. Ensure the image has the required filesystem permissions before using. |
arizephoenix/phoenix:latest-debug | Latest released version of Phoenix using a debug base image. |
arizephoenix/phoenix:version-X.X.X | Build for a specific release version using root permissions. |
arizephoenix/phoenix:version-X.X.X-nonroot | Build for a specific release version using nonroot permissions. |
arizephoenix/phoenix:version-X.X.X-debug | Build for a specific release version using a debug image. |

