我有两个简单的服务:adminer 和 mysql。
容器.yml:
version: "2"
settings:
conductor_base: debian:stretch
project_name: Ansible-container
defaults:
DB_HOST: mysql
DB_USER: test
DB_PASS: *********
DB_NAME: test
services:
adminer:
from: adminer
links:
- mysql
ports:
- 8080:8080
mysql:
from: mysql:5.7
volumes:
- /home/argonavt/ansible-container/dump.sql:/var/dump.sql
environment:
MYSQL_DATABASE: "{{ DB_NAME }}"
MYSQL_USER: "{{ DB_USER }}"
MYSQL_PASSWORD: "{{ DB_PASS }}"
MYSQL_ROOT_PASSWORD: "{{ DB_USER }}{{ DB_PASS }}"
registries: {}
但是,在构建并运行之后,创建的容器上没有 /var/dump.sql 文件,并且当我使用 --debug 模式运行它时也没有错误。此外,我没有在 container.yml 文件中定义一个新卷,但不知何故创建了它:
"Volumes": {
"/var/lib/mysql": {}
},
它是如何工作的?它怎么知道 mysql 数据应该在卷上?为什么它看不到我自己的卷?
如果我在 docker-compose 上运行相同的服务,一切都很好。
版本:
- Ansible 容器,版本 0.9.2。
- Docker 版本 17.09.1-ce。
我将不胜感激任何帮助。谢谢。