尝试创建具有已安装卷的容器时出错
Error when trying to create container with mounted volume
我正在尝试在容器上安装一个卷,以便我可以访问服务器上的文件我是 运行 容器。使用命令
docker run -i -t 188b2a20dfbf -v /home/user/shared_files:/data ubuntu /bin/bash
导致错误
docker: Error response from daemon: OCI runtime create failed:
container_linux.go:296: starting container process caused "exec: \"-v\":
executable file not found in $PATH": unknown.
我不知道该做什么。基本上,我需要能够从主机服务器访问脚本和一些数据文件。
显然,在您的 .go 脚本的第 296 行中,您指的是无法找到的内容。检查您的环境变量以查看它们是否包含该文件的路径,该文件是否完全包含在卷中等。
188b2a20dfbf
传递给 -t
是不对的。 -t
用于获取容器的伪TTY终端:
$ docker run --help
...
-t, --tty Allocate a pseudo-TTY
运行docker run -i -t -v /home/user/shared_files:/data ubuntu /bin/bash
。它对我有用:
$ echo "test123" > shared_files
$ docker run -i -t -v $(pwd)/shared_files:/data ubuntu /bin/bash
root@4b426995e373:/# cat /data
test123
docker 命令行是顺序敏感的。在图像名称之后,传递的所有内容都是 运行 在容器内的命令。对于 docker,在 run
命令之后第一个与预期参数不匹配的东西被假定为图像名称:
docker run -i -t 188b2a20dfbf -v /home/user/shared_files:/data ubuntu /bin/bash
这会尝试 运行 在图像 188b2a20dfbf 中执行 -v
命令,因为 -t
没有任何价值。
docker run -i -t -v /home/user/shared_files:/data 188b2a20dfbf /bin/bash
在同一张图片 188b2a20dfbf 中 运行 bash
。
如果您想在 ubuntu 中 运行 您的命令(从您的示例中不清楚您尝试执行的操作),请从命令中删除 188b2a20dfbf 图像名称:
docker run -i -t -v /home/user/shared_files:/data ubuntu /bin/bash
我正在尝试在容器上安装一个卷,以便我可以访问服务器上的文件我是 运行 容器。使用命令
docker run -i -t 188b2a20dfbf -v /home/user/shared_files:/data ubuntu /bin/bash
导致错误
docker: Error response from daemon: OCI runtime create failed:
container_linux.go:296: starting container process caused "exec: \"-v\":
executable file not found in $PATH": unknown.
我不知道该做什么。基本上,我需要能够从主机服务器访问脚本和一些数据文件。
显然,在您的 .go 脚本的第 296 行中,您指的是无法找到的内容。检查您的环境变量以查看它们是否包含该文件的路径,该文件是否完全包含在卷中等。
188b2a20dfbf
传递给 -t
是不对的。 -t
用于获取容器的伪TTY终端:
$ docker run --help
...
-t, --tty Allocate a pseudo-TTY
运行docker run -i -t -v /home/user/shared_files:/data ubuntu /bin/bash
。它对我有用:
$ echo "test123" > shared_files
$ docker run -i -t -v $(pwd)/shared_files:/data ubuntu /bin/bash
root@4b426995e373:/# cat /data
test123
docker 命令行是顺序敏感的。在图像名称之后,传递的所有内容都是 运行 在容器内的命令。对于 docker,在 run
命令之后第一个与预期参数不匹配的东西被假定为图像名称:
docker run -i -t 188b2a20dfbf -v /home/user/shared_files:/data ubuntu /bin/bash
这会尝试 运行 在图像 188b2a20dfbf 中执行 -v
命令,因为 -t
没有任何价值。
docker run -i -t -v /home/user/shared_files:/data 188b2a20dfbf /bin/bash
在同一张图片 188b2a20dfbf 中 运行 bash
。
如果您想在 ubuntu 中 运行 您的命令(从您的示例中不清楚您尝试执行的操作),请从命令中删除 188b2a20dfbf 图像名称:
docker run -i -t -v /home/user/shared_files:/data ubuntu /bin/bash