如何修复 docker-compose: services.my-service Additional property volume is not allowed

问题:

当你尝试使用以下命令启动基于 docker-compose 的服务时

docker_compose_up.sh
docker-compose up

你会看到以下错误消息

docker_compose_volume_error.txt
services.my-service Additional property volume is not allowed

配置如下

docker-compose-volume-typo.yml
services:
  mariadb:
    image: 'mariadb:latest'
    environment:
      - MYSQL_ALLOW_EMPTY_PASSWORD=yes
      - MYSQL_DATABASE=redmine
    volume:
      - './mariadb_data:/var/lib/mysql'

解决方案

你拼错了 volume: - 即使只有一个卷,也总是需要称为 volumes:

docker-compose-volume-fixed.yml
services:
  mariadb:
    image: 'mariadb:latest'
    environment:
      - MYSQL_ALLOW_EMPTY_PASSWORD=yes
      - MYSQL_DATABASE=redmine
    volumes:
      - './mariadb_data:/var/lib/mysql'

Check out similar posts by category: Docker