Skip to main content

This guide provides instructions for installing and setting up your environment to run Phoenix locally using Docker.

Prerequisites#

  1. Ensure Docker is installed and running on your system. You can verify this by running:

If you don’t see any server information in the output, make sure Docker is installed correctly and launch the Docker daemon.

  1. Phoenix Version

    • Our Docker Compose files are pegged to the latest release of Phoenix. If you want to use a different version, you can specify it in the docker-compose.yml file.
  2. Persistent Storage (Optional)

    • You can configure external disc storage to store your data in a SQLite database
  3. External PostgreSQL (Optional)

    • You will need to set the PHOENIX_SQL_DATABASE_URL environment variable to the connection string for your postgres instance.
    • Note: We do only officially support Postgres versions >= 14.

Docker#

Run a local instance of Arize Phoenix in Docker with 2 commands

Pull the image you would like to run

Pick an image you would like to run or simply run the latest:

Danger

Note, you should pin the phoenix version for production to the version of phoenix you plan on using. E.x. arizephoenix/phoenix:4.0.0

See for details on the ports for the container.

Navigate to http://localhost:6006 and you should see your local Arize Phoenix

Note that the above simply starts the phoenix server locally. A simple way to make sure your application always has a running phoenix server as a collector is to run the phoenix server as a side car.

Here is an example compose.yaml

This way you will always have a running Phoenix instance when you run

For the full details of on how to configure Phoenix, check out the Configuration section

PostgreSQL#

You can quickly launch Phoenix with a PostgreSQL backend using docker compose.

First, ensure that Docker Compose is installed on your machine https://docs.docker.com/compose/install/.

Copy the following YAML file into a new file called docker-compose.yml

Run docker compose to run phoenix with postgres

Note that the above setup is using your local disc as a volume mount to store the postgres data. For production deployments you will have to setup a persistent volume.

SQLite#

You can also run Phoenix using SQLite with a persistent disc attached: