数据库在docker重启时丢失了

C J*_*nes 4 database docker influxdb grafana

我正在使用Windows 10在Docker上运行Influxdb和grafana.

每次我关闭Docker时,我都会丢失数据库.

这就是我所知道的:

  • 我已尝试调整保留策略,但不会影响结果
  • 我可以关闭并重启容器(docker-compose down),数据库仍在那里.只有当我关闭Docker for Windows时,我才会丢失数据库.
  • 在创建新数据库(/ data/influxdb/data /)时,我在映射目录中看不到任何新文件夹.只有'_internal'文件夹仍然存在,我认为这对应于名为'_internal'的持久数据库

这是我的yml文件.任何帮助非常感谢.

version: '3'

services:
  # Define an InfluxDB service
  influxdb:
    image: influxdb
    volumes:
      - ./data/influxdb:/var/lib/influxdb
    ports:
      - "8086:8086"
      - "80:80"
      - "8083:8083"
  grafana:
    image: grafana/grafana
    volumes:
      - ./data/grafana:/var/lib/grafana
    container_name: grafana
    ports:
      - "3000:3000"
    env_file:
      - 'env.grafana'
    links:
      - influxdb
  # Define a service for using the influx CLI tool.
  # docker-compose run influxdb-cli
  influxdb-cli:
    image: influxdb
    entrypoint:
      - influx
      - -host
      - influxdb
    links:
      - influxdb
Run Code Online (Sandbox Code Playgroud)

tgo*_*gos 8

如果您正在使用docker-compose down/up,请记住这不是"重启",因为:

码头工人组成

构建,(重新)创建,启动和附加到服务的容器.

码头工人组成了

停止容器并删除由up创建的容器,网络,卷和图像.

另一方面,如果你继续使用:

  • docker-compose start
  • docker-compose stop
  • docker-compose restart

你处理相同的容器,你运行时创建的容器docker-compose up.

  • 这完全是问题所在!谢谢! (2认同)