为什么在 docker-machine VM 中创建文件会导致权限被拒绝?

哈林达卡

我想在使用 docker-machine 创建的 vm 中创建文件 /etc/docker/daemon.json 通过 SSH 进入它,如下所示

docker-machine ssh manager1 "sudo echo \"{ \"insecure-registries\":[\"192.168.100.99:5000\"] }\" >| /etc/docker/daemon.json"

以上失败并显示消息

sh: can't create /etc/docker/daemon.json: Permission denied

由于我需要将其放置在非交互式 bash 脚本中,因此如何实现与我尝试执行的操作类似的方法。

米奇

您的命令以 root 身份运行 echo,但输出由以您的用户身份运行的 shell 重定向处理。尝试使用以下管道使用 sudo 运行 tee:

docker-machine ssh manager1 "echo \"{ \\\"insecure-registries\\\":[\\\"192.168.100.99:5000\\\"] }\" \
  | sudo tee /etc/docker/daemon.json"

注意我还把你的 echo 中的引号转义了一次,否则引号会被 shell/echo 命令吃掉。


对于这个特定的用例,我建议您使用以下方法创建您的机器:

docker machine create --engine-insecure-registry 192.168.100.99:5000 ...

将来。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何使docker-machine在特定位置创建VM

docker-machine不能创建两个以上的VM

为什么创建单个ReceiverPort会导致Dart VM挂起?

为什么在minikube VM中无法访问docker-daemon?

为什么Docker容器提示``权限被拒绝''?

docker不是VM,为什么容器需要基本映像OS?

docker-machine / vbox共享文件夹无法在VM重新启动后幸存

为什么Docker容器无法在已挂载的文件夹中创建文件夹

为什么 Azure VM 还原操作会导致备份操作

在Ubuntu中安装Docker Machine时权限被拒绝

为什么在Google Compute Engine VM实例中禁用“创建”?

为什么我的 Docker Jekyll 构建失败?错误:权限被拒绝

与在裸机上运行Docker容器相比,在VM中运行Docker容器有什么好处?

为什么我在创建 npx 后在 Docker 容器中被拒绝了权限?

为什么Docker容器会立即退出

为什么Docker Desktop卸载会挂起

为什么“ docker-compose run”可以在容器外部创建文件?

为什么当构建退出错误时,来自docker文件的docker构建映像会创建容器?

为什么VM中的Ubuntu无法找到我的FPGA?

为什么内存管理在Java VM中如此可见?

为什么CTRL在VirtualBox VM中不起作用?

为什么Linux在VM中需要交换空间?

Docker为什么需要联合文件系统

为什么在Docker中需要“ --expose”选项?

为什么我从Docker容器中退出?

为什么docker中的变量是空的?

为什么要在c(Linux)中执行权限以及创建文件所需的写入权限?

为什么在C(Linux)中创建文件需要执行权限和写权限?

为什么docker-machine显示一个空列表?