我是码头工人的新手。我在 Windows 7 机器上并使用 docker 工具箱。我正在尝试为 MySQL 编写一个 docker-compose.yml,它创建一个数据库并运行 2 个脚本(创建表并插入)
version: '3'
services:
mysql-image:
image: mysql:5.7
environment:
MYSQL_ROOT_PASSWORD: root
MYSQL_DATABASE: myDatabase
MYSQL_USER: test
MYSQL_PASSWORD: pwtest
ports:
- "3306:3306"
volumes:
- ./sqlscripts/:/docker-entrypoint-initdb.d/
volumes:
sqlscripts:
我可以连接到数据库,但我遇到的问题是运行脚本。大多数情况下我遇到以下错误:
mysql-image_1 | mysql: [警告] 在命令行界面上使用密码可能不安全。
mysql-image_1 | 错误:无法初始化 batch_readline - 可能输入源是目录或块设备。docker_mysql-image_1 以代码 1 退出
我搜索了一段时间,试图让它工作,但此时我不知道我做错了什么。这是我试图在 docker 容器启动时运行它的 .sql 脚本之一。createTablePerson.sql
CREATE TABLE `myDatabase`.`Person` (
`idPerson` INT NOT NULL AUTO_INCREMENT,
`Name` VARCHAR(45) NOT NULL,
`age` INT NOT NULL,
PRIMARY KEY (`idPerson`));
谢谢。