InfluxDB 3 Explorer is a standalone web application designed for visualizing, querying, and managing your data stored in InfluxDB 3. Explorer provides an intuitive interface for interacting with your time series data.
To use InfluxDB 3 Explorer, you need a compatible InfluxDB 3 instance, such as InfluxDB 3 Core or InfluxDB 3 Enterprise. See the official InfluxDB Docker image.
docker pull influxdata/influxdb3-ui:1.11.0
Run InfluxDB 3 Explorer using Docker CLI.
To start Explorer in query mode, which lets people query and visualize data but not manage the database:
docker run --detach \
--name influxdb3-explorer \
--publish 8080:8080 \
influxdata/influxdb3-ui:1.11.0
Query mode hides the admin pages and refuses the requests behind them: creating or deleting databases and tables, writing and importing data, managing tokens, triggers, plugins and caches, and changing AI settings.
What Explorer can read is still decided by the token of the connection. Anyone who can reach Explorer uses that token to run queries, so give a query-mode Explorer a token that can only read the databases it should show — not an admin token. A read-only token for Explorer needs, besides db:<database>:read, permission to answer /ping and /health:
influxdb3 create token \
--permission "db:my_database:read" \
--permission "system:ping,health:read" \
--name explorer-read-only
To start Explorer in admin mode with full functionality:
docker run --detach \
--name influxdb3-explorer \
--publish 8080:8080 \
influxdata/influxdb3-ui:1.11.0 \
--mode=admin
This command:
8080 to host port 8080 (web UI)If --mode is not set, the container defaults to query mode.
Access the Explorer UI at http://localhost:8080 in your browser.
To preserve Explorer application data across container restarts, mount a local directory:
IMPORTANT: The container runs as non-root user influxui (uid 1500). The mounted directory must be owned by this user.
mkdir -p ./db
sudo chown -R 1500:1500 ./db
chmod 700 ./db
docker run --detach \
--name influxdb3-explorer \
--publish 8080:8080 \
--volume $(pwd)/db:/db:rw \
influxdata/influxdb3-ui:1.11.0 \
--mode=admin
Troubleshooting: If you see SQLITE_CANTOPEN errors, fix the directory ownership:
sudo chown -R 1500:1500 ./db
docker restart influxdb3-explorer
To pre-configure InfluxDB connection settings, create a config.json file and mount it:
mkdir -p ./config ./db
sudo chown -R 1500:1500 ./db
chmod 755 ./config
chmod 700 ./db
# Create config file
cat > ./config/config.json << 'EOF'
{
"DEFAULT_INFLUX_SERVER": "http://host.docker.internal:8181",
"DEFAULT_INFLUX_DATABASE": "my_database",
"DEFAULT_API_TOKEN": "your-admin-token",
"DEFAULT_SERVER_NAME": "my_server"
}
EOF
docker run --detach \
--name influxdb3-explorer \
--publish 8080:8080 \
--volume $(pwd)/config:/app-root/config:ro \
--volume $(pwd)/db:/db:rw \
influxdata/influxdb3-ui:1.11.0 \
--mode=admin
To enable TLS/SSL, mount a certificate and its private key into the container. Explorer then serves HTTPS on the same port, 8080, instead of HTTP; there is no separate HTTPS port.
Place cert.pem (certificate) and key.pem (private key) in your local ./ssl directory. Explorer picks them up from /etc/nginx/ssl automatically; for other file names, see Custom SSL certificate paths.
# Create directories
mkdir -p ./ssl ./db
sudo chown -R 1500:1500 ./db
chmod 755 ./ssl
# Place your cert.pem and key.pem files in ./ssl directory
docker run --detach \
--name influxdb3-explorer \
--publish 8080:8080 \
--volume $(pwd)/ssl:/etc/nginx/ssl:ro \
--volume $(pwd)/db:/db:rw \
influxdata/influxdb3-ui:1.11.0 \
--mode=admin
Access the UI via HTTPS at https://localhost:8080
You can use custom locations for certificate and key files:
mkdir -p ./ssl ./db
sudo chown -R 1500:1500 ./db
chmod 755 ./ssl
docker run --detach \
--name influxdb3-explorer \
--publish 8080:8080 \
--volume $(pwd)/ssl:/custom/ssl:ro \
--volume $(pwd)/db:/db:rw \
--env SSL_CERT_PATH=/custom/ssl/server.crt \
--env SSL_KEY_PATH=/custom/ssl/server.key \
influxdata/influxdb3-ui:1.11.0 \
--mode=admin
Access the UI via HTTPS at https://localhost:8080
The following environment variables can be used to configure the container:
DATABASE_URL - Path to SQLite database inside container (default: /db/sqlite.db)SESSION_SECRET_KEY - Secret key for session management (recommended for production)SSL_CERT_PATH - Path to SSL certificate file (default: /etc/nginx/ssl/cert.pem, when that file and the key are present)SSL_KEY_PATH - Path to SSL private key file (default: /etc/nginx/ssl/key.pem, when that file and the certificate are present)PLUGIN_REGISTRY_ALLOWED_HOSTS - Comma-separated hosts plugin registries can be added from (default in this image: github.com). To use your own registry, pass every allowed host with -e, for example -e PLUGIN_REGISTRY_ALLOWED_HOSTS=github.com,registry.example.com; the image sets this variable, so a value in config.json does not override it. * allows any host except loopback, private and link-local addressesOPENAI_BASE_URL, ANTHROPIC_BASE_URL, GEMINI_BASE_URL - Base URL of the AI provider's API, for an OpenAI-compatible endpoint, a proxy or a local model (default: the provider's public API). OPENAI_BASE_URL must include the API version, for example http://host.docker.internal:11434/v1. For ANTHROPIC_BASE_URL and GEMINI_BASE_URL the version may be omitted: Explorer adds /v1 and /v1beta when the address does not already end in a version. An empty value counts as unset; a value that is not an http or https URL makes AI requests failHTTP_REQUEST_TIMEOUT_SECS - Seconds an outgoing request from Explorer (to InfluxDB, AI providers and plugin registries) may take before it fails (default: 120). Raise it for exports or queries that run longer; 0 disables the limitImportant for production: Always set SESSION_SECRET_KEY in production. When you restart the container, InfluxDB 3 Explorer generates a new key if not explicitly set.
For more information about available options and environment variables, see the InfluxDB 3 Explorer documentation
Content type
Image
Digest
sha256:7bc3e9caf…
Size
46.9 MB
Last updated
8 days ago
docker pull influxdata/influxdb3-ui