本文的重点是详细讨论docker-privileged=true参数的作用。原文根据示例代码非常详细,对大家的学习培训或者工作都有一定的参考价值。有需要的朋友会陪我去学习了解一下。
关于0.6版本,特权被导入docker。
通过该参数,容器中的根拥有真正的根管理权限。
否则,容器中的root只是外部的一般用户权限。
由特权启动的容器可以看到主机上的许多机器和设备,并且可以挂载。
甚至允许你在docker容器中一直启动docker容器。
$dockerhelprun ... --privileged=falseGiveextendedprivilegestothiscontainer ...这里有一个Mysql的例子
您还没有在启动命令中添加-privileged=true参数。可以确认的是,docker试图 *** 作该容器,但它立即被关闭。
指令
dockerrun--namemysql-test-eMYSQL_ROOT_PASSWORD=123456-p9092:3306-ddaocloud.io/library/mysql:5.7.6尝试应用一些指令来提醒权限被拒绝的管理权限是严格禁止的。
添加参数说明后
dockerrun--namemysql-test--privileged=true-eMYSQL_ROOT_PASSWORD=123456-p9092:3306-ddaocloud.io/library/mysql:5.7.6让命令成功运行。
未设置由特权启动的容器:
[root@localhost~]#dockerrun-t-icentos:latestbash [root@ed8fee643129/]#lsblk lsblk:dm-0:failedtogetdevicepath lsblk:dm-1:failedtogetdevicepath lsblk:dm-0:failedtogetdevicepath lsblk:dm-1:failedtogetdevicepath NAMEMAJ:MINRMSIZEROTYPEMOUNTPOINT vda252:0080G0disk |-vda1252:102GB0part `-vda2252:2079G0part vdb252:160200G0disk |-vdb1252:17050G0part |-vdb2252:18050G0part `-vdb3252:190100G0part [root@ed8fee643129/]#mount/dev/vdb3/mnt/ mount:permissiondenied为特权启动设置容器:
[root@docker~]#dockerrun-t-i--privilegedcentos:latestbash [root@f83ce3877aa1/]# [root@f83ce3877aa1/]# [root@f83ce3877aa1/]#mount/dev/vdb3/mnt/ [root@f83ce3877aa1/]#df-h FilesystemSizeUsedAvailUse%Mountedon overlay77G25G52G33%/ tmpfs64M064M0%/dev tmpfs3.9G03.9G0%/sys/fs/cgroup /dev/mapper/centos-root77G25G52G33%/etc/hosts shm64M064M0%/dev/shm /dev/vdb3100G33M100G1%/mnt [root@f83ce3877aa1/]#关于讨论Docker-privileged=true参数的功能,本文到此结束。有关Docker-privileged=true的大量信息,请搜索您以前的文章或再次访问下面的相关文章。期待你以后更多的应用!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)