我正在尝试与docker容器共享我的mysql数据目录。目标是能够在主机上使用环境变量配置共享文件夹位置。
使用docker compose,我的docker-compose.yml文件的相关部分如下所示:
data:
image: yappabe/data
volumes:
- ${MYSQL_DATA_DIR}:/var/lib/mysql
tty: true
运行容器时,出现此错误:
Creating docker_data_1
ERROR: . includes invalid characters for a local volume name, only [a-zA-Z0-9][a-zA-Z0-9_.-] are allowed
在终端中运行echo $MYSQL_DATA_DIR
会返回预期结果。
答案 0 :(得分:2)
从this issue comment开始,您需要在docker-compose.yml
文件中声明环境变量:
data:
image: yappabe/data
environment:
- MYSQL_DATA_DIR
OP jdp确认卷路径(as supported/illustrated here)可以使用环境变量,如${MYSQL_DATA_DIR}:/var/lib/mysql
。