Skip to content

Commit 03311e6

Browse files
tim-quixtomas-quix
andauthored
docker/Influxdb3 service template (#611)
* add influxdb3 * update some permissions stuff * add arg for no auth * fix a doc link * Update library.json --------- Co-authored-by: tomas-quix <[email protected]>
1 parent 1a0e3c7 commit 03311e6

File tree

4 files changed

+94
-0
lines changed

4 files changed

+94
-0
lines changed

docker/influxdb3/README.md

Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
# InfluxDB v3 (alpha)
2+
3+
This sample demonstrates how to deploy and use InfluxDB v3 as a time series database in your Quix Cloud pipeline.
4+
5+
Please note: this image is provided by Influx and is offered as-is, with no specific support from Quix. For any support, contact Influx directly.
6+
7+
[!WARNING]
8+
This offering is currently in alpha and intended only for simple testing/validation,
9+
especially since authentication is not set up.
10+
Only local file storage is supported in this implementation.
11+
12+
You can learn more about InfluxDB3 [from their documentation](https://docs.influxdata.com/influxdb3/core/).
13+
14+
## How to Run
15+
16+
1. Create an account or log in to your [Quix](https://portal.platform.quix.io/signup?xlink=github) account and navigate to the Code Samples section.
17+
2. Click `Deploy` to launch a pre-built container in Quix.
18+
3. Enable state, otherwise changes will be lost on restart. Please note, the necessary storage type may not be supported on all Quix Platforms.
19+
20+
## How to Use
21+
To interact with InfluxDB v3 from your pipeline, either use one of the no-code [influxdb3 connectors](https://quix.io/integrations?category=Time+series+DB)
22+
in Quix Cloud or use a Quix Streams [InfluxDBSource](https://quix.io/docs/quix-streams/connectors/sources/influxdb3-source.html) or [InfluxDB3Sink](https://quix.io/docs/quix-streams/connectors/sinks/influxdb3-sink.html) directly.
23+
24+
Use the following values to connect:
25+
```shell
26+
host="http://influxdb3"
27+
organization_id="<ANYTHING>" # required, but not used
28+
token="<ANYTHING>" # required, but not used
29+
```
30+
31+
## Contribute
32+
33+
Feel free to fork this project on the [GitHub](https://github.com/quixio/quix-samples) repository and contribute your enhancements. Any accepted contributions will be attributed accordingly.
34+
35+
## License & Support
36+
37+
This project is open source under the Apache 2.0 license and available in our [GitHub](https://github.com/quixio/quix-samples) repo. Remember, this image is provided by Influx and is offered as-is, with no InfluxDB specific support from Quix.

docker/influxdb3/dockerfile

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
FROM quay.io/influxdb/influxdb3-core
2+
3+
USER root
4+
5+
# Create the data directory and set permissions
6+
RUN mkdir -p /app/state \
7+
&& chown -R influxdb3:influxdb3 /app/state \
8+
&& chmod -R 700 /app/state
9+
10+
RUN cat <<'ENTRYPOINT_SCRIPT' > /entrypoint.sh
11+
#!/bin/bash
12+
13+
# Ensure the data directory exists
14+
mkdir -p /app/state/influxdb3
15+
16+
# Run influxdb3 with passed args
17+
exec influxdb3 "$@"
18+
ENTRYPOINT_SCRIPT
19+
20+
RUN chmod +x /entrypoint.sh
21+
22+
USER influxdb3
23+
24+
EXPOSE 8181
25+
26+
ENTRYPOINT ["/entrypoint.sh"]
27+
CMD ["serve", "--without-auth", "--node-id", "node0", "--object-store", "file", "--data-dir", "/app/state/influxdb3"]

docker/influxdb3/icon.png

11.7 KB
Loading

docker/influxdb3/library.json

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
{
2+
"libraryItemId": "influxdb3",
3+
"name": "InfluxDB v3 alpha",
4+
"language": "docker",
5+
"tags": {
6+
"Category": ["Time series DB"],
7+
"Type": ["Auxiliary Services"]
8+
},
9+
"shortDescription": "Run InfluxDB v3 alpha in your pipeline.",
10+
"DefaultFile": "dockerfile",
11+
"EntryPoint": "dockerfile",
12+
"IconFile": "icon.png",
13+
"DeploySettings": {
14+
"DeploymentType": "Service",
15+
"CpuMillicores": 1000,
16+
"MemoryInMb": 8000,
17+
"Replicas": 1,
18+
"Network": {
19+
"ServiceName": "influxdb3",
20+
"Ports":
21+
[
22+
{
23+
"Port": 80,
24+
"TargetPort": 8181
25+
}
26+
]
27+
}
28+
},
29+
"Variables": []
30+
}

0 commit comments

Comments
 (0)