Ric*_*ard 20 wordpress docker-compose docker-volume
为什么我会收到此错误? __CODE__
我的docker-compose文件几乎与此相同:https://docs.docker.com/compose/wordpress/
version: '2'
services:
wordpress:
image: wordpress:latest
restart: always
depends_on:
- db
ports:
- 8080:80
environment:
WORDPRESS_DB_PASSWORD: example
WORDPRESS_DB_HOST: 3306
db:
image: mariadb
restart: always
environment:
MYSQL_ROOT_PASSWORD: example
volumes:
- maria_volume: /var/lib/mysql
volumes:
maria_volume: ~/mariadb
Run Code Online (Sandbox Code Playgroud)
我刚刚自己解决了这个问题。如果您只是想要一个卷来存储数据,请执行以下操作。这将创建/重用volume
作为Docker
图形驱动程序的一部分持久保存到磁盘的。
下一个问题是这是哪里?.
您可以在 docker 镜像中找到它 - 默认位置 -
C:\Users\Public\Documents\Hyper-V\虚拟硬盘
db:
image: mariadb
restart: always
environment:
MYSQL_ROOT_PASSWORD: example
volumes:
- maria_volume: /var/lib/mysql
volumes:
maria_volume:
Run Code Online (Sandbox Code Playgroud)
当然,如果您将主机目录映射到 docker 而不是将它放在Docker
图形驱动程序中。然后你可以按如下方式进行。
db:
image: mariadb
restart: always
environment:
MYSQL_ROOT_PASSWORD: example
volumes:
- maria_volume: /var/lib/mysql
volumes:
maria_volume:
driver: local
driver_opts:
o: bind
type: none
device: /C/mariadb
Run Code Online (Sandbox Code Playgroud)
请注意,将主机目录映射为卷(至少在 Windows 上)时,您可能会遇到read/write
权限问题,这是我自己尚未解决的问题。
就我而言,这是因为我错过了:
在卷名后面添加a的缘故。
代替:
volumes:
- mysqldata:
Run Code Online (Sandbox Code Playgroud)
我输入了:
volumes:
- mysqldata
Run Code Online (Sandbox Code Playgroud)
docker-compose up
给了我与上述相同的错误。
不幸的是,没有这样的功能.
您无法在docker-compose中映射顶级卷.
以下是选项:
在撰写之外创建一个卷(使用映射)并在您的撰写中使用它.
volumes:
maria_volume:
external:
name: volume-name
Run Code Online (Sandbox Code Playgroud)小智 5
尝试这个:
volumes:
- maria_volume: /var/lib/mysql
volumes:
maria_volume:
external:
name: ~/mariadb
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
31081 次 |
最近记录: |