尝试在卷上持久化数据时出现 docker-compose.yml 错误

标签 docker docker-compose yaml

在我的 Docker 实例中,我创建了一个名为 jokes 的卷。 .我现在正在尝试使用 docker-compose up 构建我的服务但我不断收到此错误消息:

ERROR: The Compose file './docker-compose.yml' is invalid because:
services.db.volumes contains an invalid type, it should be an array

这是我的docker-compose.yml文件:
version: '3.6'
services:
  web:
    build: .
    command: puma
    depends_on:
      - db
    environment:
      DATABASE_URL: "postgres://postgres@db"
    ports:
      - "3000:3000"
    volumes:
      - "./:/app"
    working_dir: /app
  db:
    image: "postgres:10.3-alpine"
    volumes: "-jokes: /var/lib/postgresql/data"
volumes:
  jokes: ~

我应该如何解决这个问题?

最佳答案

How should I fix this?



详见the official documentation你需要在那里提供一个列表(因此提示列表),所以将连字符移到引号之外,如下所示:
volumes: 
  - "jokes:/var/lib/postgresql/data"

关于尝试在卷上持久化数据时出现 docker-compose.yml 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51481002/

相关文章:

azure - 向 Azure 容器实例入口点提供参数

docker - 无法在Windows上使用Docker停止容器

django - 为什么 nginx 在对链接的 docker 容器执行 `uwsgi_pass` 时返回 502?

docker - 多个 docker-compose 项目之间的通信

python - 按操作系统限制 Environment.yml 依赖项

python - GAE 管理控制台自定义页面未显示

docker - 使用 docker build 和 tmpfs 构建 Docker 镜像?

docker-compose 看不到特定目录的内容

docker - 在确定分区位置之前 60000 毫秒的 Kafka 客户端超时已过期

validation - YAML 中映射键标识符中允许的字符?