“ docker container run”至少需要1个参数

时间:2019-05-25 20:24:45

标签: mysql docker containers volume

我正在尝试使用已经创建的卷创建容器,但是我的控制台显示错误

docker container run" requires at least 1 argument

这是我要运行的命令:

docker container run --name db -v volume-dados-do-banco:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=Mypass

我也尝试了这个,还有更多的参数,但是仍然存在相同的错误:

docker container run -d --name db -p 3306:3306 -e 'ACCEPT_EULA=Y' -e MYSQL_ROOT_PASSWORD=Mypass -v volume-dados-do-banco:/var/lib/mysql

对发生这种情况的原因有何想法?

5 个答案:

答案 0 :(得分:1)

尝试下面的命令。.您的命令似乎出现语法错误。.

docker container run -d --name db -v volume-dados-do-banco:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=Mypass

答案 1 :(得分:0)

问题不在于docker,您只是没有指定要运行的映像。您的命令应按照documentation包含Docker映像。

  

docker运行[OPTIONS] IMAGE [:TAG | @DIGEST] [命令] [ARG ...]

示例为:

docker run -d --name db -v volume-dados-do-banco:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=Mypass mysql:latest

答案 2 :(得分:0)

我刚刚重新启动docker并运行:

docker run --name torgmysqldb --volumes-from volume-dados-banco-mysql -e MYSQL_ROOT_PASSWORD=Mypass -p 3307:3306 mysql

我发现了一个与此有关的已知问题: https://github.com/docker/for-win/issues/2722

答案 3 :(得分:0)

当我使用这个时,我有同样的问题:

docker run  -d -p 3306:3306 -v /Volumes/wd4black/mysql -e MYSQL_ROOT_PASSWORD=root mysql

但是当我尝试以下操作时,问题消失了:

docker run --name my-s -d -p 3306:3306 -v /Volumes/wd4black/mysql -e MYSQL_ROOT_PASSWORD=root mysql

所以我认为--name是关键,但是文档没有写它。

答案 4 :(得分:0)

我只是在使用psql时遇到了同样的问题,我的密码只包含了&,我需要在/

之前使用/对其进行转义