---
title: "Deploy Opik observability"
description: "Protected Opik with durable traces, feedback, and evaluation workflows."
category: "Observability"
url: https://railway.com/deploy/opik-observability
---

# Deploy Opik observability

Protected Opik with durable traces, feedback, and evaluation workflows.

**[Deploy Opik observability on Railway](https://railway.com/template/opik-observability)**

- **Creator:** Anton Orel's Projects
- **Category:** Observability
- **Total deploys:** 2

## Template content

### Opik ZooKeeper

- **Image:** zookeeper:3.9.4@sha256:dfa9ba46d14bd52bcb3c1dac3ba91f179cf4cebf7ee576e1c2df09c68fc1d30d
- **Start command:** `/bin/bash -ec 'mkdir -p /bitnami/zookeeper/data; chown -R zookeeper:zookeeper /bitnami/zookeeper; exec gosu zookeeper /docker-entrypoint.sh zkServer.sh start-foreground'`

### Opik Redis

- **Image:** redis:7.2.4-alpine3.19@sha256:c8bb255c3559b3e458766db810aa7b3c7af1235b204cfdb304e79ff388fe1a5a
- **Start command:** `/bin/sh -ec 'umask 077; printf "appendonly yes\nrequirepass %s\n" "$REDIS_PASSWORD" >/tmp/redis.conf; exec redis-server /tmp/redis.conf'`

### Opik ClickHouse

- **Image:** clickhouse/clickhouse-server:26.3.16.16-alpine@sha256:b45ab149f0d331b944b4aa2ccdd47d0242238fd39e68ec524ad63338e4b9d8f8
- **Start command:** `/bin/sh -ec 'mkdir -p /etc/clickhouse-server/config.d /etc/clickhouse-server/users.d; printf "%s\n" "$OPIK_CLICKHOUSE_CONFIG" | sed "s/ZOOKEEPER_HOST/$OPIK_ZOOKEEPER_HOST/g; s/CLICKHOUSE_HOST/$OPIK_CLICKHOUSE_HOST/g" >/etc/clickhouse-server/config.d/opik.xml; printf "%s\n" "$OPIK_CLICKHOUSE_USERS" >/etc/clickhouse-server/users.d/opik.xml; exec /entrypoint.sh'`
- **Health check:** /ping

### Opik MySQL

- **Image:** mysql:8.4.2@sha256:ac80b6e09e5b12b4f9d5cd4f6425e43464247aa4ba4f6169da5daf59e5877f7d

### Opik Evaluator

- **Image:** ghcr.io/comet-ml/opik/opik-python-backend:2.2.13@sha256:7c5830bfded23e2dbb4c69ca3dcf07a6a3df12c3d2824b89fed3a94e5ab5c3a1
- **Health check:** /healthcheck

### Opik Frontend

- **Image:** ghcr.io/comet-ml/opik/opik-frontend:2.2.13@sha256:da5b1c95204e35a278bafc16deeccf77eb1d10878e6948bfef768ab01248a50f
- **Start command:** `/bin/sh -ec 'until getent hosts "$OPIK_BACKEND_HOST" >/dev/null; do sleep 3; done; printf "%s\n" "$OPIK_FRONTEND_CONFIG" >/etc/nginx/templates/default.conf.template; exec /docker-entrypoint.sh nginx -g "daemon off;"'`
- **Health check:** /health

### Opik Gateway

- **Image:** caddy:2.11.4-alpine@sha256:5f5c8640aae01df9654968d946d8f1a56c497f1dd5c5cda4cf95ab7c14d58648
- **Start command:** `/bin/sh -ec 'hash="$(caddy hash-password --plaintext "$OPIK_PASSWORD")"; printf '"'"':8080 {\n handle /healthz {\n  rewrite * /is-alive/ping\n  reverse_proxy %s\n }\n handle {\n  basic_auth {\n   %s %s\n  }\n  reverse_proxy %s\n }\n}\n'"'"' "$OPIK_BACKEND_UPSTREAM" "$OPIK_USERNAME" "$hash" "$OPIK_FRONTEND_UPSTREAM" >/tmp/Caddyfile; exec caddy run --config /tmp/Caddyfile --adapter caddyfile'`
- **Health check:** /healthz
- **Public domain:** Yes

### Opik Backend

- **Image:** ghcr.io/comet-ml/opik/opik-backend:2.2.13@sha256:5068c51a880bdcbfe86389a50007b67d1c61a2e303d78f5fc92d650a24dfa705
- **Start command:** `/bin/bash -ec 'until curl -fsS http://$ANALYTICS_DB_HOST:$ANALYTICS_DB_PORT/ping >/dev/null; do sleep 3; done; ./run_db_migrations.sh && ./provision_agent_insights_readonly_user.sh && exec ./entrypoint.sh'`
- **Health check:** /is-alive/ping

## Buckets

- **Opik Attachments**

## Documentation

# Deploy and Host Opik observability on Railway

Opik is an open-source LLM evaluation and observability platform for tracing prompts, models, agents, experiments, and feedback. This template deploys the full evaluation topology with a shared Basic Auth gateway and private data services.

## About Hosting Opik

The template runs the Opik frontend, backend, and evaluator with MySQL, Redis, ClickHouse, ZooKeeper, and a Railway Bucket. First boot applies upstream migrations automatically. Railway generates the shared gateway password and every datastore credential.

This template is intentionally evaluation-only: Opik OSS has no native users, roles, or API keys, and its upstream Compose topology is not the recommended production deployment. Use the shared gateway only with trusted teammates.

## Common Use Cases

- Evaluate and compare LLM or agent runs
- Inspect traces, spans, inputs, outputs, and feedback
- Prototype an internal observability workflow before a production Opik design

## Dependencies for Opik Hosting

### Deployment Dependencies

- MySQL for transactional metadata
- ClickHouse and ZooKeeper for telemetry
- Redis for queues, locks, and cache
- A Railway Bucket for attachments and artifacts

## Why Deploy Opik on Railway?

Railway creates the nine-resource graph, private networking, secrets, persistent storage, health checks, and one authenticated public endpoint from a single template.


## Similar templates

- [Pyroscope profiling](https://railway.com/deploy/pyroscope-profiling) — Protected continuous profiling with durable Pyroscope storage.
- [SigOnly](https://railway.com/deploy/sigonly) — Deploy SigNoz with a working demo app & config in one click
- [Unwrapped Spotify Music Stats](https://railway.com/deploy/wide-bold) — Unwrapped Spotify Music Stats, Estatísticas de músicas disponíveis

Open this page in a browser: https://railway.com/deploy/opik-observability
