我正在尝试采用下面使用的 3 个命令,并将其变成单个命令,或者将其放入可以从另一个程序调用的脚本中。
这就是我目前正在做的事情:
$ sudo docker exec -it <my-app container id> bash
$ chmod +r /var/opt/mssql/data/myFile.bak
$ exit
有没有更简单的方法来 chmod docker 容器内的文件?如果没有,我如何将其放入单个命令或单个脚本中?
这不起作用:
$ sudo docker exec -it <my-app container id> bash; chmod +r /var/opt/mssql/data/myFile.bak; exit
我假设您有一个正在运行的容器,并且您想要将文件 chmod 到其中。此更改可能会与容器的生命周期相关,除非该文件位于卷上。
docker exec <my-app container id> bash -c 'chmod +r /var/opt/mssql/data/myFile.bak'
如果您的设置需要,请使用
sudo
执行。假设 bash
位于容器的 PATH
中,并且执行容器的用户拥有执行 chmod
的正确所有权。
您不需要
-it
,因为它不是交互式会话,只是容器内的单个进程执行。