【问题标题】:Launching a InfluxDB container in docker with a default database name在 docker 中使用默认数据库名称启动 InfluxDB 容器
【发布时间】:2018-03-02 09:49:15
【问题描述】:

我正在运行以下命令来启动 InfluxDB 容器。这应该会创建一个名为 defaultdb 的新数据库。

docker run -p 8086:8086 \
      -e INFLUXDB_DB=defaultdb -e INFLUXDB_ADMIN_ENABLED=true \
      -e INFLUXDB_ADMIN_USER=admin -e INFLUXDB_ADMIN_PASSWORD=adminpass \
      -e INFLUXDB_USER=user -e INFLUXDB_USER_PASSWORD=userpass \
      -v influxdb:/var/lib/influxdb \
      influxdb:latest 

但它不会创建默认数据库defaultdb。它创建数据库db0 而不是defaultdb。我做错了什么?

https://hub.docker.com/_/influxdb/

提前致谢。

【问题讨论】:

    标签: docker influxdb


    【解决方案1】:

    问题可能来自音量。

    -v influxdb:/var/lib/influxdb
    

    特别是,如果您之前使用相同的命令创建了一个数据库,但没有指定 INFLUXDB_DB=defaultdb,则此旧数据库将通过旧卷覆盖容器数据。 要解决此问题,请删除旧卷并重新运行命令:

    docker volume rm influxdb
    

    【讨论】:

    • 该命令直接取自文档。感谢您的帮助,yamenk。我的回答中解释了解决方案。
    • 这正是发生在我身上的事。 tnx
    【解决方案2】:

    问题是由INFLUXDB_ADMIN_ENABLED=true 行引起的。

    文档说明:

    管理员界面自 1.1.0 起已弃用,并将在 在 1.3.0 中删除。

    我使用的是latest 版本,该版本(当前)是1.4,所以似乎不推荐使用的INFLUXDB_ADMIN_ENABLED 变量存在问题。

    删除那条线,一切正常。

    docker run -p 8086:8086 \
          -e INFLUXDB_DB=defaultdb \
          -e INFLUXDB_ADMIN_USER=admin \
          -e INFLUXDB_ADMIN_PASSWORD=adminpass \
          -e INFLUXDB_USER=user \
          -e INFLUXDB_USER_PASSWORD=userpass \
          -v influxdb:/var/lib/influxdb \
          influxdb:latest 
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-11-13
      • 1970-01-01
      • 1970-01-01
      • 2021-04-17
      • 1970-01-01
      • 2016-08-22
      相关资源
      最近更新 更多