diff --git a/src/docs.json b/src/docs.json
index 547155d992..5e7176519a 100644
--- a/src/docs.json
+++ b/src/docs.json
@@ -809,14 +809,7 @@
{
"group": "Setup guides",
"pages": [
- {
- "group": "LangSmith",
- "icon": "server",
- "pages": [
- "langsmith/kubernetes",
- "langsmith/docker"
- ]
- },
+ "langsmith/kubernetes",
"langsmith/deploy-self-hosted-full-platform",
{
"group": "Manage an installation",
@@ -1941,6 +1934,10 @@
}
},
"redirects": [
+ {
+ "source": "/langsmith/docker",
+ "destination": "/langsmith/self-hosted"
+ },
{
"source": "/oss/python/langgraph/memory",
"destination": "/oss/python/concepts/memory"
diff --git a/src/langsmith/deploy-self-hosted-full-platform.mdx b/src/langsmith/deploy-self-hosted-full-platform.mdx
index 8cca39e7ea..e42883c2ea 100644
--- a/src/langsmith/deploy-self-hosted-full-platform.mdx
+++ b/src/langsmith/deploy-self-hosted-full-platform.mdx
@@ -1,7 +1,6 @@
---
title: Enable LangSmith Deployment, Fleet, Insights, and Polly
sidebarTitle: Enable additional features
-icon: "server"
description: Enable LangSmith Deployment, Fleet, Insights, and Polly on a self-hosted LangSmith instance.
---
diff --git a/src/langsmith/docker.mdx b/src/langsmith/docker.mdx
deleted file mode 100644
index 109462283e..0000000000
--- a/src/langsmith/docker.mdx
+++ /dev/null
@@ -1,130 +0,0 @@
----
-title: Self-host LangSmith with Docker (Deprecated)
-sidebarTitle: Install on Docker (Deprecated)
-description: Docker-based self-hosting for LangSmith is deprecated. Use Kubernetes powered infrastructure instead.
----
-
-
-**Docker support for self-hosted LangSmith has been deprecated.** For all self-hosted deployments, use [Kubernetes powered infrastructure](/langsmith/kubernetes) instead. The instructions below are preserved for reference only and will be removed in a future release.
-
-
-
-Self-hosting LangSmith is an add-on to the Enterprise Plan designed for our largest, most security-conscious customers. See our [pricing page](https://www.langchain.com/pricing) for more detail, and [contact our sales team](https://www.langchain.com/contact-sales) if you want to get a license key to trial LangSmith in your environment.
-
-
-This guide previously provided instructions for running the **LangSmith platform** locally using Docker for development and testing purposes.
-
-
-This page describes how to install the base [LangSmith platform](/langsmith/self-hosted#langsmith) for local testing. It does **not** include deployment management features. For more details, review the [self-hosted options](/langsmith/self-hosted).
-
-
-Note that Docker Compose is limited to local development environments only and does not extend support to container services such as AWS Elastic Container Service, Azure Container Instances, and Google Cloud Run.
-
-## Prerequisites
-
-1. Ensure Docker is installed and running on your system. You can verify this by running:
-
- ```bash
- docker info
- ```
-
- If you don't see any server information in the output, make sure Docker is installed correctly and launch the Docker daemon.
-
- 1. Recommended: At least 4 vCPUs, 16GB Memory available on your machine.
- * You may need to tune resource requests/limits for all of our different services based off of organization size/usage
- 2. Disk Space: LangSmith can potentially require a lot of disk space. Ensure you have enough disk space available.
-
-2. LangSmith License Key
- 1. You can get this from your LangChain representative. [Contact our sales team](https://www.langchain.com/contact-sales) for more information.
-
-3. Api Key Salt
-
- 1. This is a secret key that you can generate. It should be a random string of characters.
- 2. You can generate this using the following command:
-
- ```bash
- openssl rand -base64 32
- ```
-
-4. Egress to `https://beacon.langchain.com` (if not running in offline mode)
- 1. LangSmith requires egress to `https://beacon.langchain.com` for license verification and usage reporting. This is required for LangSmith to function properly. You can find more information on egress requirements in the [Egress](/langsmith/self-host-egress) section.
-
-5. Configuration
- 1. There are several configuration options that you can set in the `.env` file. You can find more information on the available configuration options in the [Configuration](/langsmith/self-host-scale) section.
-
-## Running via Docker Compose
-
-The following explains how to run the LangSmith using Docker Compose. This is the most flexible way to run LangSmith without Kubernetes. The default configuration for Docker Compose is intended for local testing only and not for instances where any services are exposed to the public internet. **In production, we highly recommend using a secured Kubernetes environment.**
-
-### 1. Fetch the LangSmith `docker-compose.yml` file
-
-You can find the `docker-compose.yml` file and related files in the LangSmith SDK repository here: [*LangSmith Docker Compose File*](https://github.com/langchain-ai/helm/blob/main/charts/langsmith/docker-compose/docker-compose.yaml)
-
-Copy the `docker-compose.yml` file and all files in that directory from the LangSmith SDK to your project directory.
-
-* Ensure that you copy the `users.xml` file as well.
-
-### 2. Configure environment variables
-
-1. Copy the `.env.example` file from the LangSmith SDK to your project directory and rename it to `.env`.
-2. Configure the appropriate values in the `.env` file. You can find the available configuration options in the [Configuration](/langsmith/self-hosted) section.
-
-You can also set these environment variables in the `docker-compose.yml` file directly or export them in your terminal. We recommend setting them in the `.env` file.
-
-### 3. Start server
-
-Start the LangSmith application by executing the following command in your terminal:
-
-```bash
-docker-compose up
-```
-
-You can also run the server in the background by running:
-
-```bash
-docker-compose up -d
-```
-
-### Validate your deployment:
-
-1. Curl the exposed port of the `cli-langchain-frontend-1` container:
-
- ```bash
- curl localhost:1980/info{"version":"0.5.7","license_expiration_time":"2033-05-20T20:08:06","batch_ingest_config":{"scale_up_qsize_trigger":1000,"scale_up_nthreads_limit":16,"scale_down_nempty_trigger":4,"size_limit":100,"size_limit_bytes":20971520}}
- ```
-
-2. Visit the exposed port of the `cli-langchain-frontend-1` container on your browser
-
- The LangSmith UI should be visible/operational at `http://localhost:1980`
-
- 
-
-### Checking the logs
-
-If, at any point, you want to check if the server is running and see the logs, run
-
-```bash
-docker-compose logs
-```
-
-### Stopping the server
-
-```bash
-docker-compose down
-```
-
-## Using LangSmith
-
-Now that LangSmith is running, you can start using it to trace your code. You can find more information on how to use self-hosted LangSmith in the [self-hosted usage guide](/langsmith/self-hosted).
-
-Your LangSmith instance is now running but may not be fully setup yet.
-
-If you used one of the basic configs, you may have deployed a no-auth configuration. In this state, there is no authentication or concept of user accounts nor API keys and traces can be submitted directly without an API key so long as the hostname is passed to the LangChain tracer/LangSmith SDK.
-
-As a next step, it is strongly recommended you work with your infrastructure administrators to:
-
-* Setup DNS for your LangSmith instance to enable easier access
-* Configure SSL to ensure in-transit encryption of traces submitted to LangSmith
-* Configure LangSmith for [oauth authentication](/langsmith/self-host-sso) or [basic authentication](/langsmith/self-host-basic-auth) to secure your LangSmith instance
-* Secure access to your Docker environment to limit access to only the LangSmith frontend and API
-* Connect LangSmith to secured Postgres and Redis instances
diff --git a/src/langsmith/langsmith-managed-clickhouse.mdx b/src/langsmith/langsmith-managed-clickhouse.mdx
index 4e76271051..85e085ef8b 100644
--- a/src/langsmith/langsmith-managed-clickhouse.mdx
+++ b/src/langsmith/langsmith-managed-clickhouse.mdx
@@ -38,7 +38,7 @@ The overall architecture looks like this:
- **You must use a supported blob storage option.** Read the [blob storage guide](/langsmith/self-host-blob-storage) for more information.
- To use private endpoints, ensure that your VPC is in a ClickHouse Cloud supported [region](https://clickhouse.com/docs/en/cloud/reference/supported-regions). Otherwise, you will need to use a public endpoint we will secure with firewall rules. Your VPC will need to have a NAT gateway to allow us to allowlist your traffic.
- You must have a VPC that can connect to the LangSmith-managed ClickHouse service. You will need to work with our team to set up the necessary networking.
-- You must have a LangSmith self-hosted instance running. You can use our managed ClickHouse service with both [Kubernetes](/langsmith/kubernetes) and [Docker](/langsmith/docker) installations.
+- You must have a LangSmith self-hosted instance running. You can use our managed ClickHouse service with [Kubernetes](/langsmith/kubernetes) installations.
## Data storage
diff --git a/src/langsmith/self-host-mirroring-images.mdx b/src/langsmith/self-host-mirroring-images.mdx
index 8979754d94..9450cdd468 100644
--- a/src/langsmith/self-host-mirroring-images.mdx
+++ b/src/langsmith/self-host-mirroring-images.mdx
@@ -9,7 +9,7 @@ By default, LangSmith will pull images from our public Docker registry. However,
* Authenticated access to a Docker registry that your Kubernetes cluster/machine has access to.
* Docker installed on your local machine or a machine that has access to the Docker registry.
-* A Kubernetes cluster or a machine where you can run LangSmith.
+* A Kubernetes cluster where you can run LangSmith.
## Mirroring the images
@@ -46,11 +46,9 @@ You will need to repeat this for each image that you want to mirror.
## Configuration
-Once the images are mirrored, you will need to configure your LangSmith installation to use the mirrored images. You can do this by modifying the `values.yaml` file for your LangSmith Helm Chart installation or the `.env` file for your Docker installation. Replace tag with the version you want to use, e.g. `0.10.66` for the latest version at the time of writing.
+Once the images are mirrored, you will need to configure your LangSmith installation to use the mirrored images. You can do this by modifying the `values.yaml` file for your LangSmith Helm Chart installation. Replace tag with the version you want to use, e.g. `0.10.66` for the latest version at the time of writing.
-
-
-```yaml Helm
+```yaml
images:
imagePullSecrets: [] # Add your image pull secrets here if needed
registry: "" # Set this to your registry URL if you mirrored all images to the same registry using our script. Then you can remove the repository prefix from the images below.
@@ -96,13 +94,6 @@ images:
tag: "24.8"
```
-```bash Docker
-# In your .env file
-_REGISTRY=your-registry # Set this to your registry URL if you mirrored all images to the same registry using our script. Otherwise you will need to manually set the repository for each image in the compose file.
-```
-
-
-
## Additional images for Fleet and Insights
If you are using Fleet or Insights, the LangGraph operator dynamically creates Redis and PostgreSQL (pgvector) pods for each deployment. These pods use images defined in operator templates that require separate configuration.
diff --git a/src/langsmith/self-host-upgrades.mdx b/src/langsmith/self-host-upgrades.mdx
index 9ac81d4a10..c01d1737ce 100644
--- a/src/langsmith/self-host-upgrades.mdx
+++ b/src/langsmith/self-host-upgrades.mdx
@@ -3,14 +3,10 @@ title: Upgrade an installation
sidebarTitle: Upgrade an installation
---
-For general upgrade instructions, please follow the instructions below. Certain versions may have specific upgrade instructions, which will be detailed in more specific upgrade guides.
-
Downgrades are not officially supported. LangSmith upgrades may include database migrations and other changes that are not backward-compatible. If you need to roll back to a previous version, contact [support](mailto:support@langchain.dev) for guidance.
-## Kubernetes(Helm)
-
If you don't have the repo added, run the following command to add it:
```bash
@@ -25,7 +21,7 @@ helm repo update
Update your helm chart config file with any updates that are needed in the new version. These will be detailed in the release notes for the new version.
-Run the following command to upgrade the chart(replace version with the version you want to upgrade to):
+Run the following command to upgrade the chart (replace `version` with the version you want to upgrade to):
If you are using a namespace other than the default namespace, you will need to specify the namespace in the `helm` and `kubectl` commands by using the `-n langchain/langsmith --version --values --wait --debug
@@ -60,7 +56,7 @@ Verify that the upgrade was successful:
helm status
```
-All pods should be in the `Running` state. Verify that clickhouse is running and that both `migrations` jobs have completed.
+All pods should be in the `Running` state. Verify that ClickHouse is running and that both `migrations` jobs have completed.
```bash
kubectl get pods
@@ -75,82 +71,33 @@ langsmith-playground-85b444d8f7-pl589 1/1 Running 0 15h
langsmith-queue-d58cb64f7-87d68 1/1 Running 0 15h
```
-### Validate your deployment:
+## Validate your deployment
1. Run `kubectl get services`
- Output should look something like:
+ Output will be similar to:
-```bash
-NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
-kubernetes ClusterIP 172.20.0.1 443/TCP 27d
-langsmith-backend ClusterIP 172.20.22.34 1984/TCP 21d
-langsmith-clickhouse ClusterIP 172.20.117.62 8123/TCP,9000/TCP 21d
-langsmith-frontend LoadBalancer 172.20.218.30 80:30093/TCP,443:31130/TCP 21d
-langsmith-platform-backend ClusterIP 172.20.232.183 1986/TCP 21d
-langsmith-playground ClusterIP 172.20.167.132 3001/TCP 21d
-langsmith-postgres ClusterIP 172.20.59.63 5432/TCP 21d
-langsmith-redis ClusterIP 172.20.229.98 6379/TCP 20d
-```
+ ```bash
+ NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
+ kubernetes ClusterIP 172.20.0.1 443/TCP 27d
+ langsmith-backend ClusterIP 172.20.22.34 1984/TCP 21d
+ langsmith-clickhouse ClusterIP 172.20.117.62 8123/TCP,9000/TCP 21d
+ langsmith-frontend LoadBalancer 172.20.218.30 80:30093/TCP,443:31130/TCP 21d
+ langsmith-platform-backend ClusterIP 172.20.232.183 1986/TCP 21d
+ langsmith-playground ClusterIP 172.20.167.132 3001/TCP 21d
+ langsmith-postgres ClusterIP 172.20.59.63 5432/TCP 21d
+ langsmith-redis ClusterIP 172.20.229.98 6379/TCP 20d
+ ```
-2. Curl the external ip of the `langsmith-frontend` service:
+1. Curl the external ip of the `langsmith-frontend` service:
```bash
curl /api/info
{"version":"0.5.7","license_expiration_time":"2033-05-20T20:08:06","batch_ingest_config":{"scale_up_qsize_trigger":1000,"scale_up_nthreads_limit":16,"scale_down_nempty_trigger":4,"size_limit":100,"size_limit_bytes":20971520}}
```
-Check that the version matches the version you upgraded to.
+ Check that the version matches the version you upgraded to.
-3. Visit the external ip for the `langsmith-frontend` service on your browser
-
- The LangSmith UI should be visible/operational
+1. Visit the external IP for the `langsmith-frontend` service on your browser. The LangSmith UI should be visible and operational.

-
-## Docker
-
-Upgrading the Docker version of LangSmith is a bit more involved than the Helm version and may require a small amount of downtime. Please follow the instructions below to upgrade your Docker version of LangSmith.
-
-1. Update your `docker-compose.yml` file to the file used in the latest release. You can find this in the [LangSmith SDK GitHub repository](https://github.com/langchain-ai/langsmith-sdk/blob/main/python/langsmith/cli/docker-compose.yaml)
-2. Update your `.env` file with any new environment variables that are required in the new version. These will be detailed in the release notes for the new version.
-3. Run the following command to stop your current LangSmith instance:
-
-```bash
-docker-compose down
-```
-
-4. Run the following command to start your new LangSmith instance in the background:
-
-```bash
-docker-compose up -d
-```
-
-If everything ran successfully, you should see all the LangSmith containers running and healthy.
-
-```bash
-CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
-e1c8f01a4ffc langchain/langsmith-frontend:0.5.7 "/entrypoint.sh ngin…" 10 hours ago Up 40 seconds 0.0.0.0:80->80/tcp, 8080/tcp cli-langchain-frontend-1
-39e1394846b9 langchain/langsmith-backend:0.5.7 "/bin/sh -c 'exec uv…" 10 hours ago Up 40 seconds 0.0.0.0:1984->1984/tcp cli-langchain-backend-1
-f8688dd58f2f langchain/langsmith-go-backend:0.5.7 "./smith-go" 10 hours ago Up 40 seconds 0.0.0.0:1986->1986/tcp cli-langchain-platform-backend-1
-006f1303b04d langchain/langsmith-backend:0.5.7 "saq app.workers.que…" 10 hours ago Up 40 seconds cli-langchain-queue-1
-73a90242ed3a redis:7 "docker-entrypoint.s…" 10 hours ago Up About a minute (healthy) 0.0.0.0:63791->6379/tcp cli-langchain-redis-1
-eecf75ca672b postgres:14.7 "docker-entrypoint.s…" 10 hours ago Up About a minute (healthy) 0.0.0.0:5433->5432/tcp cli-langchain-db-1
-3aa5652a864d clickhouse/clickhouse-server:23.9 "/entrypoint.sh" 10 hours ago Up About a minute (healthy) 9009/tcp, 0.0.0.0:8124->8123/tcp, 0.0.0.0:9001->9000/tcp cli-langchain-clickhouse-1
-84edc329a37f langchain/langsmith-playground:0.5.7 "docker-entrypoint.s…" 10 hours ago Up About a minute 0.0.0.0:3001->3001/tcp cli-langchain-playground-1
-```
-
-### Validate your deployment:
-
-1. Curl the exposed port of the `cli-langchain-frontend-1` container:
-
- ```bash
- curl localhost:80/info
- {"version":"0.5.7","license_expiration_time":"2033-05-20T20:08:06","batch_ingest_config":{"scale_up_qsize_trigger":1000,"scale_up_nthreads_limit":16,"scale_down_nempty_trigger":4,"size_limit":100,"size_limit_bytes":20971520}}
- ```
-
-2. Visit the exposed port of the `cli-langchain-frontend-1` container on your browser
-
-The LangSmith UI should be visible/operational
-
-
diff --git a/src/langsmith/self-host-usage.mdx b/src/langsmith/self-host-usage.mdx
index 25bce35b5d..6c88745ebf 100644
--- a/src/langsmith/self-host-usage.mdx
+++ b/src/langsmith/self-host-usage.mdx
@@ -6,7 +6,7 @@ sidebarTitle: Interact with an installation
This guide will walk you through the process of using your self-hosted instance of LangSmith.
-This guide assumes you have already deployed a self-hosted LangSmith instance. If you have not, please refer to the [kubernetes deployment guide](/langsmith/kubernetes) or the [docker deployment guide](/langsmith/docker).
+This guide assumes you have already deployed a self-hosted LangSmith instance. If you have not, please refer to the [kubernetes deployment guide](/langsmith/kubernetes).
### Configuring the application you want to use with LangSmith
diff --git a/src/langsmith/self-hosted.mdx b/src/langsmith/self-hosted.mdx
index 89cb7fadec..cc0ee84bc7 100644
--- a/src/langsmith/self-hosted.mdx
+++ b/src/langsmith/self-hosted.mdx
@@ -46,9 +46,9 @@ This page provides an overview of each self-hosted model:
Model | Includes | Best for | Methods
------------------|------------------|----------|--------------------
-**Observability & Evaluation** | - LangSmith (UI + API)
- Backend services (queue, Playground, ACE)
- Datastores: PostgreSQL, Redis, ClickHouse, optional blob storage
| - Teams who need self-hosted observability, tracing, and evaluation
- Running LangSmith without deploying agents/graphs
| - Docker Compose (dev/test)
- Kubernetes + Helm (production)
+**Observability & Evaluation** | - LangSmith (UI + API)
- Backend services (queue, Playground, ACE)
- Datastores: PostgreSQL, Redis, ClickHouse, optional blob storage
| - Teams who need self-hosted observability, tracing, and evaluation
- Running LangSmith without deploying agents/graphs
| - Kubernetes + Helm (production)
**Observability, Evaluation & Deployment** | - Everything from Observability and Evaluation
- Control plane (deployments UI, revision management, Studio)
- Data plane (Agent Server pods)
- Kubernetes operator for orchestration
| - Enterprise teams needing a private LangChain Cloud
- Centralized UI/API for managing multiple agents/graphs
- Integrated observability and orchestration
| - Kubernetes with Helm (required)
- Runs on EKS, GKE, AKS, or self-managed clusters
-**Standalone server** | - Agent Server container(s)
- Requires PostgreSQL + Redis (shared or dedicated)
- Optional LangSmith integration for tracing
| - Lightweight deployments of one or a few agents
- Integrating Agent Servers as microservices
- Teams preferring to manage scaling & CI/CD themselves
| - Docker / Docker Compose (dev/test)
- Kubernetes + Helm (production)
- Any container runtime or VM (ECS, EC2, ACI, etc.)
+**Standalone server** | - Agent Server container(s)
- Requires PostgreSQL + Redis (shared or dedicated)
- Optional LangSmith integration for tracing
| - Lightweight deployments of one or a few agents
- Integrating Agent Servers as microservices
- Teams preferring to manage scaling & CI/CD themselves
| - Kubernetes + Helm (production)
- Any container runtime or VM (ECS, EC2, ACI, etc.)
For setup guides, refer to:
@@ -119,15 +119,7 @@ LangSmith will bundle all storage services by default. You can configure it to u
| **Redis** | [Redis](https://github.com/redis/redis) is a powerful in-memory key-value database that persists on disk. By holding data in memory, Redis offers high performance for operations like caching.
LangSmith uses Redis to back queuing and caching operations.
💡 [Connect to external Redis](/langsmith/self-host-external-redis) - AWS ElastiCache, GCP Memorystore, Azure Cache |
| **Blob storage** | LangSmith supports several blob storage providers, including [AWS S3](https://aws.amazon.com/s3/), [Azure Blob Storage](https://azure.microsoft.com/en-us/services/storage/blobs/), and [Google Cloud Storage](https://cloud.google.com/storage).
LangSmith uses blob storage to store large files, such as trace artifacts, feedback attachments, and other large data objects. Blob storage is optional, but highly recommended for production deployments.
💡 [Enable blob storage](/langsmith/self-host-blob-storage) - AWS S3, GCP GCS, Azure Blob |
-### Setup methods
-
-- **Docker Compose** (development/testing only)
-- **Kubernetes + Helm** (recommended for production)
-
-### Setup guides
-
-- [Install on Kubernetes](/langsmith/kubernetes) (production)
-- [Install with Docker](/langsmith/docker) (development only)
+To install, follow the [Kubernetes setup guide](/langsmith/kubernetes).
## Enable LangSmith Deployment