Skip to content

Commit 9049b44

Browse files
Run update.sh
1 parent 7867bb9 commit 9049b44

File tree

1 file changed

+80
-207
lines changed

1 file changed

+80
-207
lines changed

influxdb/README.md

Lines changed: 80 additions & 207 deletions
Original file line numberDiff line numberDiff line change
@@ -77,129 +77,131 @@ WARNING:
7777

7878
InfluxDB is the time series database platform designed to collect, store, and process large amounts of event and time series data. Ideal for monitoring (sensors, servers, applications, networks), financial analytics, and behavioral tracking.
7979

80-
## Quick Start
80+
## Start InfluxDB 3 Core
8181

82-
Use InfluxDB 3 Core, the latest InfluxDB OSS:
82+
... via [`docker compose`](https://github.com/docker/compose)
83+
84+
Example `compose.yaml` for `influxdb`:
85+
86+
```yaml
87+
# compose.yaml
88+
name: influxdb3
89+
services:
90+
influxdb3-core:
91+
container_name: influxdb3-core
92+
image: influxdb:3-core
93+
ports:
94+
- 8181:8181
95+
command:
96+
- influxdb3
97+
- serve
98+
- --node-id=node0
99+
- --object-store=file
100+
- --data-dir=/var/lib/influxdb3/data
101+
- --plugin-dir=/var/lib/influxdb3/plugins
102+
volumes:
103+
- type: bind
104+
source: ~/.influxdb3/core/data
105+
target: /var/lib/influxdb3/data
106+
- type: bind
107+
source: ~/.influxdb3/core/plugins
108+
target: /var/lib/influxdb3/plugins
109+
```
110+
111+
Alternatively, you can use the following command to start InfluxDB 3 Core:
112+
113+
```bash
114+
docker run --rm -p 8181:8181 \
115+
-v $PWD/data:/var/lib/influxdb3/data \
116+
-v $PWD/plugins:/var/lib/influxdb3/plugins \
117+
influxdb:3-core influxdb3 serve \
118+
--node-id=my-node-0 \
119+
--object-store=file \
120+
--data-dir=/var/lib/influxdb3/data \
121+
--plugin-dir=/var/lib/influxdb3/plugins
122+
```
123+
124+
InfluxDB 3 Core starts with:
125+
126+
- Data persistence at `/var/lib/influxdb3/data`
127+
- Python processing engine enabled with plugin directory
128+
- HTTP API listening on port `8181`
83129

84-
```console
85-
docker run -d -p 8181:8181 influxdb:3-core
130+
### Using InfluxDB 3 Core
131+
132+
After starting your InfluxDB 3 server, follow the [Get Started guide](https://docs.influxdata.com/influxdb3/core/get-started/) to create an authorization token and start writing, querying, and processing data via the built-in `influxdb3` CLI or the HTTP API.
133+
134+
### Recommended tools for InfluxDB 3 Core
135+
136+
Use the following tools with InfluxDB 3 Core:
137+
138+
- **[InfluxDB 3 Explorer UI](https://docs.influxdata.com/influxdb3/explorer/)**: Visualize, query, and manage your data with the standalone web interface designed for InfluxDB 3. [View on Docker Hub](https://hub.docker.com/r/influxdata/influxdb3-ui)
139+
- **[Telegraf](https://docs.influxdata.com/telegraf/v1/)**: Collect, transform, and send metrics from hundreds of sources directly to InfluxDB 3. [View on Docker Hub](https://hub.docker.com/_/telegraf)
140+
- **[Official Client Libraries](https://docs.influxdata.com/influxdb3/core/reference/client-libraries/)**: Integrate InfluxDB 3 into your applications using supported libraries for Python, Go, JavaScript, and more.
141+
142+
### Customize server options
143+
144+
Customize your instance with available [server options](https://docs.influxdata.com/influxdb3/core/reference/clis/influxdb3/serve/):
145+
146+
```bash
147+
docker run --rm influxdb:3-core influxdb3 serve --help
86148
```
87149

88-
Available OSS tags:
150+
## Available InfluxDB variants
89151

90152
- `influxdb:3-core` - **Latest InfluxDB OSS** (InfluxDB 3 Core)
91153
- `influxdb:2` - Previous generation OSS (InfluxDB v2)
92154
- `influxdb:1.11` - InfluxDB v1
93155

94-
## Available Versions
95-
96-
#### InfluxDB 3 Core (`influxdb:3-core`) - Latest OSS
156+
### InfluxDB 3 Core (`influxdb:3-core`) - Latest OSS
97157

98-
- **Latest generation** with the InfluxDB 3 storage engine, Apache Arrow, and DataFusion SQL
158+
- **Latest generation** using object storage with the InfluxDB 3 storage engine, Apache Arrow, and DataFusion SQL
99159
- Sub-10ms queries and unlimited cardinality
100160
- Supports SQL and InfluxQL queries
101161
- Includes Python processing engine
102162
- Designed for real-time monitoring and recent data
103-
- Includes v1 compatibility API for writing and querying data
104-
- Includes v2 compatibility API for writing data
163+
- Includes InfluxDB v1 and v2 compatibility APIs
105164

106-
#### InfluxDB v2 (`influxdb:2`)
165+
### InfluxDB v2 (`influxdb:2`)
107166

108167
- Built on the TSM storage engine
109168
- Supports Flux query language
110169
- Integrated UI and dashboards
111170
- Includes v1 compatibility API that supports InfluxQL
112171

113-
#### InfluxDB v1 (`influxdb:1.11`)
172+
### InfluxDB v1 (`influxdb:1.11`)
114173

115174
- Built on the TSM storage engine
116175
- Original version with InfluxQL query language
117176
- Proven stability for existing deployments
118177

119-
### Enterprise Editions (License Required)
178+
### InfluxDB 3 Enterprise (license required) (`influxdb:3-enterprise`)
120179

121-
#### InfluxDB 3 Enterprise (`influxdb:3-enterprise`)
122-
123-
- Adds unlimited data retention, compaction, clustering, and high availability to InfluxDB 3 Core
180+
Adds unlimited data retention, compaction, clustering, and high availability to InfluxDB 3 Core.
124181

125182
For setup instructions, see the [InfluxDB 3 Enterprise installation documentation](https://docs.influxdata.com/influxdb3/enterprise/install/).
126183

127-
#### InfluxDB v1 Enterprise
184+
### InfluxDB v1 Enterprise (license required)
128185

129186
- `influxdb:1.11-data` - Data nodes for clustering
130187
- `influxdb:1.11-meta` - Meta nodes for cluster coordination (port 8091)
131188

132189
For setup instructions, see the [InfluxDB v1 Enterprise Docker documentation](https://docs.influxdata.com/enterprise_influxdb/v1/introduction/installation/docker/).
133190

134-
## Version Compatibility
191+
## Version compatibility
135192

136-
### Migration Paths
193+
### Migration paths
137194

138195
To migrate from v1 or v2 to InfluxDB 3:
139196

140197
1. Dual-write new data to v1/v2 and InfluxDB 3.
141198
2. Query historical data from v1/v2 and write it to InfluxDB 3. *InfluxDB 3 Enterprise is recommended for historical query capability.*
142199

143-
## Using InfluxDB 3 Core (Latest OSS)
144-
145-
### Start InfluxDB 3 Core
146-
147-
... via [`docker compose`](https://github.com/docker/compose)
148-
149-
Example `compose.yaml` for `influxdb`:
150-
151-
```yaml
152-
# compose.yaml
153-
name: influxdb3
154-
services:
155-
influxdb3-core:
156-
container_name: influxdb3-core
157-
image: influxdb:3-core
158-
ports:
159-
- 8181:8181
160-
command:
161-
- influxdb3
162-
- serve
163-
- --node-id=node0
164-
- --object-store=file
165-
- --data-dir=/var/lib/influxdb3/data
166-
- --plugin-dir=/var/lib/influxdb3/plugins
167-
volumes:
168-
- type: bind
169-
source: ~/.influxdb3/core/data
170-
target: /var/lib/influxdb3/data
171-
- type: bind
172-
source: ~/.influxdb3/core/plugins
173-
target: /var/lib/influxdb3/plugins
174-
```
175-
176-
The example `compose.yaml` starts InfluxDB 3 Core on port 8181 with:
177-
178-
- Data persistence at `/var/lib/influxdb3`
179-
- Plugin directory for Python processing engine
180-
- Object storage configured (default: file)
181-
182-
### Get Started Using InfluxDB 3
183-
184-
After starting your InfluxDB 3 server:
185-
186-
- Follow the [Get started guide](https://docs.influxdata.com/influxdb3/core/get-started/) to create an auth token and database, and write, query, and process data.
187-
- Use the [InfluxDB 3 Explorer UI](https://docs.influxdata.com/influxdb3/explorer/) to write data, create dashboards, explore metrics, and manage databases
188-
189-
### InfluxDB 3 Server Options
190-
191-
Customize your deployment with available [server options](https://docs.influxdata.com/influxdb3/core/reference/clis/influxdb3/serve/):
192-
193-
```bash
194-
# View all available options
195-
docker run --rm influxdb:3-core influxdb3 serve --help
196-
```
197-
198200
## Using InfluxDB v2
199201

200202
*InfluxDB v2 is a previous version. Consider InfluxDB 3 Core for new deployments.*
201203

202-
### Start InfluxDB v2
204+
Enter the following command to start InfluxDB v2 initialized with custom configuration:
203205

204206
```bash
205207
docker run -d -p 8086:8086 \
@@ -221,7 +223,7 @@ For detailed instructions, see the [InfluxDB v2 Docker Compose documentation](ht
221223

222224
*InfluxDB v1 is a previous version. Consider InfluxDB 3 Core for new deployments.*
223225

224-
```console
226+
```bash
225227
docker run -d -p 8086:8086 \
226228
-v $PWD:/var/lib/influxdb \
227229
influxdb:1.11
@@ -232,7 +234,7 @@ This starts InfluxDB v1 with:
232234
- HTTP API on port 8086
233235
- Data persisted to current directory
234236

235-
For more information, see the [InfluxDB v1 Docker documentation](https://docs.influxdata.com/influxdb/v1/introduction/install/docker/).
237+
For more information, see the [InfluxDB v1 Docker documentation](https://docs.influxdata.com/influxdb/v1/introduction/install/docker/). For v1 Enterprise installation, see the [InfluxDB Enterprise v1 documentation](https://docs.influxdata.com/enterprise_influxdb/v1/introduction/installation/docker/).
236238

237239
# Image Variants
238240

@@ -250,135 +252,6 @@ This variant is useful when final image size being as small as possible is your
250252

251253
To minimize image size, it's uncommon for additional related tools (such as `git` or `bash`) to be included in Alpine-based images. Using this image as a base, add the things you need in your own Dockerfile (see the [`alpine` image description](https://hub.docker.com/_/alpine/) for examples of how to install packages if you are unfamiliar).
252254

253-
## `influxdb:1-data`
254-
255-
*Using this image for [InfluxDB Enterprise](https://docs.influxdata.com/enterprise_influxdb/v1/introduction/installation/meta_node_installation/#license-key-or-file) requires a valid InfluxData [license key](https://docs.influxdata.com/enterprise_influxdb/v1/introduction/installation/meta_node_installation/#license-key-or-file).*
256-
257-
This image contains the enterprise data node package for clustering. It supports all of the same options as the InfluxDB 1.x OSS image, but it needs port 8088 to be exposed to the meta nodes.
258-
259-
Refer to the `influxdb:1-meta` variant for directions on how to setup a cluster.
260-
261-
## `influxdb:1-meta`
262-
263-
*This image requires a valid license key from InfluxData.* Please visit our [products page](https://www.influxdata.com/products/) to learn more.
264-
265-
This image contains the enterprise meta node package for clustering. It is meant to be used in conjunction with the `influxdb:1-data` package of the same version.
266-
267-
### Using this Image
268-
269-
#### Specifying the license key
270-
271-
The license key can be specified using either an environment variable or by overriding the configuration file. If you specify the license key directly, the container needs to be able to access the InfluxData portal.
272-
273-
```console
274-
docker run -p 8089:8089 -p 8091:8091 \
275-
-e INFLUXDB_ENTERPRISE_LICENSE_KEY=<license-key>
276-
influxdb:1-meta
277-
```
278-
279-
#### Running the container
280-
281-
The examples below will use docker's built-in networking capability. If you use the port exposing feature, the host port and the container port need to be the same.
282-
283-
First, create a docker network:
284-
285-
```console
286-
docker network create influxdb
287-
```
288-
289-
Start three meta nodes. This is the suggested number of meta nodes. We do not recommend running more or less. If you choose to run more or less, be sure that the number of meta nodes is odd. The hostname must be set on each container to the address that will be used to access the meta node. When using docker networks, the hostname should be made the same as the name of the container.
290-
291-
```console
292-
docker run -d --name=influxdb-meta-0 --network=influxdb \
293-
-h influxdb-meta-0 \
294-
-e INFLUXDB_ENTERPRISE_LICENSE_KEY=<license-key> \
295-
influxdb:1-meta
296-
docker run -d --name=influxdb-meta-1 --network=influxdb \
297-
-h influxdb-meta-1 \
298-
-e INFLUXDB_ENTERPRISE_LICENSE_KEY=<license-key> \
299-
influxdb:1-meta
300-
docker run -d --name=influxdb-meta-2 --network=influxdb \
301-
-h influxdb-meta-2 \
302-
-e INFLUXDB_ENTERPRISE_LICENSE_KEY=<license-key> \
303-
influxdb:1-meta
304-
```
305-
306-
When setting the hostname, you can use `-h <hostname>` or you can directly set the environment variable using `-e INFLUXDB_HOSTNAME=<hostname>`.
307-
308-
After starting the meta nodes, you need to tell them about each other. Choose one of the meta nodes and run `influxd-ctl` in the container.
309-
310-
```console
311-
docker exec influxdb-meta-0 \
312-
influxd-ctl add-meta influxdb-meta-1:8091
313-
docker exec influxdb-meta-0 \
314-
influxd-ctl add-meta influxdb-meta-2:8091
315-
```
316-
317-
Or you can just start a single meta node. If you setup a single meta node, you do not need to use `influxd-ctl add-meta`.
318-
319-
```console
320-
docker run -d --name=influxdb-meta --network=influxdb \
321-
-h influxdb-meta \
322-
-e INFLUXDB_ENTERPRISE_LICENSE_KEY=<license-key> \
323-
influxdb:1-meta -single-server
324-
```
325-
326-
#### Connecting the data nodes
327-
328-
Start the data nodes using `influxdb:data` with similar command line arguments to the meta nodes. You can start as many data nodes as are allowed by your license.
329-
330-
```console
331-
docker run -d --name=influxdb-data-0 --network=influxdb \
332-
-h influxdb-data-0 \
333-
-e INFLUXDB_LICENSE_KEY=<license-key> \
334-
influxdb:1-data
335-
```
336-
337-
You can add `-p 8086:8086` to expose the http port to the host machine. After starting the container, choose one of the meta nodes and add the data node to it.
338-
339-
```console
340-
docker exec influxdb-meta-0 \
341-
influxd-ctl add-data influxdb-data-0:8088
342-
```
343-
344-
Perform these same steps for any other data nodes that you want to add.
345-
346-
You can now connect to any of the running data nodes to use your cluster.
347-
348-
See the [influxdb](https://hub.docker.com/_/influxdb/) image documentation for more details on how to use the data node images.
349-
350-
#### Configuration
351-
352-
InfluxDB Meta can be either configured from a config file or using environment variables. To mount a configuration file and use it with the server, you can use this command:
353-
354-
Generate the default configuration file:
355-
356-
```console
357-
docker run --rm influxdb:meta influxd-meta config > influxdb-meta.conf
358-
```
359-
360-
Modify the default configuration, which will now be available under `$PWD`. Then start the InfluxDB Meta container.
361-
362-
```console
363-
docker run \
364-
-v $PWD/influxdb-meta.conf:/etc/influxdb/influxdb-meta.conf:ro \
365-
influxdb:1-meta -config /etc/influxdb/influxdb-meta.conf
366-
```
367-
368-
Modify `$PWD` to the directory where you want to store the configuration file.
369-
370-
For environment variables, the format is `INFLUXDB_$SECTION_$NAME`. All dashes (`-`) are replaced with underscores (`_`). If the variable isn't in a section, then omit that part.
371-
372-
Examples:
373-
374-
```console
375-
INFLUXDB_REPORTING_DISABLED=true
376-
INFLUXDB_META_DIR=/path/to/metadir
377-
INFLUXDB_ENTERPRISE_REGISTRATION_ENABLED=true
378-
```
379-
380-
For more information, see how to [Install InfluxDB Enterprise meta nodes](https://docs.influxdata.com/enterprise_influxdb/v1/introduction/installation/meta_node_installation/).
381-
382255
# License
383256

384257
View [license information](https://github.com/influxdata/influxdb/blob/master/LICENSE) for the software contained in this image.

0 commit comments

Comments
 (0)