> ## Documentation Index
> Fetch the complete documentation index at: https://docs.onyx.app/llms.txt
> Use this file to discover all available pages before exploring further.

# Docker

> Deploy Onyx with Docker Compose

<Tip>
  Check out the [Resourcing Guide](/deployment/getting_started/resourcing) before getting started with Docker.
</Tip>

## Guide

**Note:** On Windows, the commands will be slightly different but all the steps are the same.

<Steps>
  <Step title="Install Requirements">
    * [Git](https://git-scm.com/downloads)
    * [Docker (with compose)](https://docs.docker.com/get-docker/)
  </Step>

  <Step title="Clone the Onyx repo">
    ```bash theme={null}
    git clone --depth 1 https://github.com/onyx-dot-app/onyx.git
    ```
  </Step>

  <Step title="Navigate to the compose files">
    ```bash theme={null}
    cd onyx/deployment/docker_compose
    ```
  </Step>

  <Step title="Launch Onyx">
    To pull images from Docker Hub and start Onyx:

    ```bash theme={null}
    docker compose up -d
    ```

    Alternatively, to build images from source:

    ```bash theme={null}
    docker compose up -d --build --force-recreate
    ```

    <Warning>
      If you've previously launched Onyx with the old `onyx-stack` service name,
      you'll need to add `-p onyx-stack` to your launch command.

      For example: `docker compose up -p onyx-stack -d`.
    </Warning>
  </Step>
</Steps>

After the containers come up,
the system needs to go through an initialization process after which you can access Onyx at
[localhost:3000](localhost:3000).

## Enabling Onyx Craft

To enable [Onyx Craft](/overview/core_features/craft) (AI-powered artifact builder for web apps, documents, and slides):

### Option 1: Use the installation script (Recommended)

Run the installation script with the `--include-craft` flag:

```bash theme={null}
cd onyx/deployment/docker_compose
./install.sh --include-craft
```

Then start the services:

```bash theme={null}
cd onyx_data/deployment
docker compose up -d
```

### Option 2: Existing deployments

If you've already set up Onyx, you can enable Craft by running:

```bash theme={null}
ENABLE_CRAFT=true IMAGE_TAG=craft-latest docker compose up -d
```

<Tip>
  See the [Craft documentation](/overview/core_features/craft) for full details on capabilities and configuration.
</Tip>

## Next Steps

<CardGroup cols={2}>
  <Card title="Configure Authentication" icon="shield-check" href="/deployment/authentication/basic">
    Set up authentication for your Onyx deployment with OAuth, OIDC, or SAML.
  </Card>

  <Card title="More Onyx Configuration Options" icon="gear" href="/deployment/configuration/configuration">
    Learn about all available configuration options for your Onyx deployment.
  </Card>
</CardGroup>
