官方文档:InfluxDB 3 Core Documentation
安装
docker安装
拉镜像
下载influxdb:3-core 3-core就是目前的版本,它是数据库本身,所以不附带UI界面
docker pull influxdb:3-core
创建Influxdb在docker中使用的网络
docker network create influx-network
启动容器
mkdir -p /data/influxdb3/core/{data,plugins}
mkdir -p /data/influxdb3/explorer/{config,db,ssl}
sudo chmod -R 777 /data/influxdb3
# 安装core
docker run -d \
--name influxdb3-core \
--network influx-network \
-p 8181:8181 \
-v /data/influxdb3/core/data:/var/lib/influxdb3/data \
-v /data/influxdb3/core/plugins:/var/lib/influxdb3/plugins \
influxdb:3-core \
influxdb3 serve \
--node-id=node0 \
--object-store=file \
--data-dir=/var/lib/influxdb3/data \
--plugin-dir=/var/lib/influxdb3/plugins
创建令牌
docker exec -it influxdb3-core influxdb3 create token --admin
# 如:apiv3_IrVXCPOs4SH1spzGEwPzoAFyHsvHwxHFrERkMQmJUmnlqN-dGQZnN3M8jJ1EX6LtTMJoCkqp3kIAielAKf-BrA
接下来需要将这个密钥放到我们的宿主机的变量里
# 在您的主机终端中执行(不是容器内)
export INFLUXDB3_AUTH_TOKEN=apiv3_IrVXCPOs4SH1spzGEwPzoAFyHsvHwxHFrERkMQmJUmnlqN-dGQZnN3M8jJ1EX6LtTMJoCkqp3kIAielAKf-BrA
# 验证环境变量设置成功
echo $INFLUXDB3_AUTH_TOKEN
永久设置环境变量(可选)
# 添加到您的 shell 配置文件
echo 'export INFLUXDB3_AUTH_TOKEN=apiv3_IrVXCPOs4SH1spzGEwPzoAFyHsvHwxHFrERkMQmJUmnlqN-dGQZnN3M8jJ1EX6LtTMJoCkqp3kIAielAKf-BrA' >> ~/.bashrc
# 重新加载配置
source ~/.bashrc
UI基础配置
安装完毕之后,需要做一件事就是,为Explorer配置默认的数据库地址,因为Explorer只是一个UI界面,它需要连到我们另一个容器中的真正的influxdb数据库
在刚刚创建并挂载过的config文件夹中创建一个默认的配置文件 名为config.json,在这个文件中输入我们已经创建成功的influxdb的信息
cat > /data/influxdb3/explorer/config/config.json << 'EOF'
{
"DEFAULT_INFLUX_SERVER": "http://host.docker.internal:8181",
"DEFAULT_INFLUX_DATABASE": "_internal",
"DEFAULT_API_TOKEN": "apiv3_IrVXCPOs4SH1spzGEwPzoAFyHsvHwxHFrERkMQmJUmnlqN-dGQZnN3M8jJ1EX6LtTMJoCkqp3kIAielAKf-BrA",
"DEFAULT_SERVER_NAME": "Local-InfluxDB3"
}
EOF
DEFAULT_INFLUX_SERVER : 连接地址,host.docker.internal代表docker内部网络
DEFAULT_INFLUX_DATABASE: 默认数据库名,可以换成别的库名
DEFAULT_API_TOKEN: 保存的token
DEFAULT_SERVER_NAME: 随便起个名字
安装UI
# 安装 UI
docker run --detach \
--name influxdb3-explorer \
--network influx-network \
--publish 8888:80 \
--publish 8889:8888 \
--volume /data/influxdb3/explorer/config:/app-root/config:ro \
--volume /data/influxdb3/explorer/db:/db:rw \
--volume /data/influxdb3/explorer/ssl:/etc/nginx/ssl:ro \
influxdata/influxdb3-ui:latest \
--mode=admin
访问地址:http://ip:8888