我开始学习docker,我想使用docker-compose文件运行一个nextcloud。
我正在使用的docker-compose文件。我只指定了我创建的文件夹的卷。
version: ‘2’
volumes:
nextcloud:/home/ahmed/Desktop/docker-storage/nextcloud
db:/home/ahmed/Desktop/docker-storage/db
services:
db:
image: mariadb
restart: always
volumes:
- db:/var/lib/mysql
environment:
- MYSQL_ROOT_PASSWORD= anha1985
- MYSQL_PASSWORD= anha1985
- MYSQL_DATABASE=nextcloud
- MYSQL_USER=nextcloud
app:
image: nextcloud
ports:
- 8080:80
links:
- db
volumes:
- nextcloud:/var/www/html
restart: always我得到的错误信息是。错误:在文件‘./docker-compose.yml’中,卷必须是映射,而不是字符串。
请给我一些建议。
发布于 2018-09-05 05:03:22
合成文件顶部的卷部分用于定义命名卷。如果只有具有绝对或相对路径的主机卷,则只需在每个服务中定义卷。对于命名卷,您可以在顶层和需要访问命名卷的每个服务中定义它。这两个部分虽然名称相似,但具有不同的语法。
有关yml文件顶层的卷部分,请参阅此文档:https://docs.docker.com/compose/compose-file/#volume-configuration-reference
本文档适用于每个服务中的卷部分:https://docs.docker.com/compose/compose-file/#volumes
https://stackoverflow.com/questions/52172902
复制相似问题