Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ubento docker sh mysql脚本运行_Mysql_Linux_Bash_Shell_Docker - Fatal编程技术网

Ubento docker sh mysql脚本运行

Ubento docker sh mysql脚本运行,mysql,linux,bash,shell,docker,Mysql,Linux,Bash,Shell,Docker,我有一个脚本来构建我的docker环境。 我有一句话: docker exec -it guac-mysql /bin/bash mysql -u root -p123456 CREATE DATABASE guacamole; CREATE USER 'guacamole' IDENTIFIED BY 123456; GRANT SELECT,INSERT,UPDATE,DELETE ON guacamole.* TO 'guacamole'; FLUSH PRIVILEGES; quit

我有一个脚本来构建我的docker环境。 我有一句话:

docker exec -it guac-mysql /bin/bash
mysql -u root -p123456
CREATE DATABASE guacamole;
CREATE USER 'guacamole' IDENTIFIED BY 123456;
GRANT SELECT,INSERT,UPDATE,DELETE ON guacamole.* TO 'guacamole';
FLUSH PRIVILEGES;
quit
当我运行时,脚本进入容器上的bash,但是其他行不运行,我只需要逐个运行它们。 如何执行然后注入脚本


谢谢:)

您不能将此作为单个脚本运行。docker exec命令将在容器中创建一个shell。在您退出容器之前,它不会运行它的其余部分。然后它将运行
mysql

您需要运行
dockerexec-it-guacmysql/bin/bash

然后您可以创建一个单独的脚本,在容器本身中运行
mysql
命令

但您当前的脚本无法工作。同样,它将运行
mysql
,然后等待它退出,然后再运行
create database
,等等


请参阅有关从文件执行脚本的文档:

请参阅:mysql:command not found