mirror of https://github.com/docker/cli.git
Allow adding rules to cgroup devices.allow on container create/run
This introduce a new `--device-cgroup-rule` flag that allow a user to add one or more entry to the container cgroup device `devices.allow` Signed-off-by: Kenfe-Mickael Laventure <mickael.laventure@gmail.com>
This commit is contained in:
parent
706bbd52f0
commit
e9ad0f345f
|
@ -1358,6 +1358,7 @@ _docker_container_run() {
|
||||||
--cpuset-mems
|
--cpuset-mems
|
||||||
--cpu-shares -c
|
--cpu-shares -c
|
||||||
--device
|
--device
|
||||||
|
--device-cgroup-rule
|
||||||
--device-read-bps
|
--device-read-bps
|
||||||
--device-read-iops
|
--device-read-iops
|
||||||
--device-write-bps
|
--device-write-bps
|
||||||
|
|
|
@ -121,6 +121,7 @@ complete -c docker -A -f -n '__fish_seen_subcommand_from create' -l cap-drop -d
|
||||||
complete -c docker -A -f -n '__fish_seen_subcommand_from create' -l cidfile -d 'Write the container ID to the file'
|
complete -c docker -A -f -n '__fish_seen_subcommand_from create' -l cidfile -d 'Write the container ID to the file'
|
||||||
complete -c docker -A -f -n '__fish_seen_subcommand_from create' -l cpuset -d 'CPUs in which to allow execution (0-3, 0,1)'
|
complete -c docker -A -f -n '__fish_seen_subcommand_from create' -l cpuset -d 'CPUs in which to allow execution (0-3, 0,1)'
|
||||||
complete -c docker -A -f -n '__fish_seen_subcommand_from create' -l device -d 'Add a host device to the container (e.g. --device=/dev/sdc:/dev/xvdc:rwm)'
|
complete -c docker -A -f -n '__fish_seen_subcommand_from create' -l device -d 'Add a host device to the container (e.g. --device=/dev/sdc:/dev/xvdc:rwm)'
|
||||||
|
complete -c docker -A -f -n '__fish_seen_subcommand_from create' -l device-cgroup-rule -d 'Add a rule to the cgroup allowed devices list (e.g. --device-cgroup-rule="c 13:37 rwm")'
|
||||||
complete -c docker -A -f -n '__fish_seen_subcommand_from create' -l dns -d 'Set custom DNS servers'
|
complete -c docker -A -f -n '__fish_seen_subcommand_from create' -l dns -d 'Set custom DNS servers'
|
||||||
complete -c docker -A -f -n '__fish_seen_subcommand_from create' -l dns-opt -d "Set custom DNS options (Use --dns-opt='' if you don't wish to set options)"
|
complete -c docker -A -f -n '__fish_seen_subcommand_from create' -l dns-opt -d "Set custom DNS options (Use --dns-opt='' if you don't wish to set options)"
|
||||||
complete -c docker -A -f -n '__fish_seen_subcommand_from create' -l dns-search -d "Set custom DNS search domains (Use --dns-search=. if you don't wish to set the search domain)"
|
complete -c docker -A -f -n '__fish_seen_subcommand_from create' -l dns-search -d "Set custom DNS search domains (Use --dns-search=. if you don't wish to set the search domain)"
|
||||||
|
@ -312,6 +313,7 @@ complete -c docker -A -f -n '__fish_seen_subcommand_from run' -l cidfile -d 'Wri
|
||||||
complete -c docker -A -f -n '__fish_seen_subcommand_from run' -l cpuset -d 'CPUs in which to allow execution (0-3, 0,1)'
|
complete -c docker -A -f -n '__fish_seen_subcommand_from run' -l cpuset -d 'CPUs in which to allow execution (0-3, 0,1)'
|
||||||
complete -c docker -A -f -n '__fish_seen_subcommand_from run' -s d -l detach -d 'Detached mode: run the container in the background and print the new container ID'
|
complete -c docker -A -f -n '__fish_seen_subcommand_from run' -s d -l detach -d 'Detached mode: run the container in the background and print the new container ID'
|
||||||
complete -c docker -A -f -n '__fish_seen_subcommand_from run' -l device -d 'Add a host device to the container (e.g. --device=/dev/sdc:/dev/xvdc:rwm)'
|
complete -c docker -A -f -n '__fish_seen_subcommand_from run' -l device -d 'Add a host device to the container (e.g. --device=/dev/sdc:/dev/xvdc:rwm)'
|
||||||
|
complete -c docker -A -f -n '__fish_seen_subcommand_from create' -l device-cgroup-rule -d 'Add a rule to the cgroup allowed devices list (e.g. --device-cgroup-rule="c 13:37 rwm")'
|
||||||
complete -c docker -A -f -n '__fish_seen_subcommand_from run' -l dns -d 'Set custom DNS servers'
|
complete -c docker -A -f -n '__fish_seen_subcommand_from run' -l dns -d 'Set custom DNS servers'
|
||||||
complete -c docker -A -f -n '__fish_seen_subcommand_from run' -l dns-opt -d "Set custom DNS options (Use --dns-opt='' if you don't wish to set options)"
|
complete -c docker -A -f -n '__fish_seen_subcommand_from run' -l dns-opt -d "Set custom DNS options (Use --dns-opt='' if you don't wish to set options)"
|
||||||
complete -c docker -A -f -n '__fish_seen_subcommand_from run' -l dns-search -d "Set custom DNS search domains (Use --dns-search=. if you don't wish to set the search domain)"
|
complete -c docker -A -f -n '__fish_seen_subcommand_from run' -l dns-search -d "Set custom DNS search domains (Use --dns-search=. if you don't wish to set the search domain)"
|
||||||
|
|
|
@ -546,6 +546,7 @@ __docker_container_subcommand() {
|
||||||
"($help)--cidfile=[Write the container ID to the file]:CID file:_files"
|
"($help)--cidfile=[Write the container ID to the file]:CID file:_files"
|
||||||
"($help)--cpus=[Number of CPUs (default 0.000)]:cpus: "
|
"($help)--cpus=[Number of CPUs (default 0.000)]:cpus: "
|
||||||
"($help)*--device=[Add a host device to the container]:device:_files"
|
"($help)*--device=[Add a host device to the container]:device:_files"
|
||||||
|
"($help)*--device-cgroup-rule=[Add a rule to the cgroup allowed devices list]:device:cgroup: "
|
||||||
"($help)*--device-read-bps=[Limit the read rate (bytes per second) from a device]:device:IO rate: "
|
"($help)*--device-read-bps=[Limit the read rate (bytes per second) from a device]:device:IO rate: "
|
||||||
"($help)*--device-read-iops=[Limit the read rate (IO per second) from a device]:device:IO rate: "
|
"($help)*--device-read-iops=[Limit the read rate (IO per second) from a device]:device:IO rate: "
|
||||||
"($help)*--device-write-bps=[Limit the write rate (bytes per second) to a device]:device:IO rate: "
|
"($help)*--device-write-bps=[Limit the write rate (bytes per second) to a device]:device:IO rate: "
|
||||||
|
|
|
@ -44,6 +44,7 @@ Options:
|
||||||
--cpuset-cpus string CPUs in which to allow execution (0-3, 0,1)
|
--cpuset-cpus string CPUs in which to allow execution (0-3, 0,1)
|
||||||
--cpuset-mems string MEMs in which to allow execution (0-3, 0,1)
|
--cpuset-mems string MEMs in which to allow execution (0-3, 0,1)
|
||||||
--device value Add a host device to the container (default [])
|
--device value Add a host device to the container (default [])
|
||||||
|
--device-cgroup-rule value Add a rule to the cgroup allowed devices list
|
||||||
--device-read-bps value Limit read rate (bytes per second) from a device (default [])
|
--device-read-bps value Limit read rate (bytes per second) from a device (default [])
|
||||||
--device-read-iops value Limit read rate (IO per second) from a device (default [])
|
--device-read-iops value Limit read rate (IO per second) from a device (default [])
|
||||||
--device-write-bps value Limit write rate (bytes per second) to a device (default [])
|
--device-write-bps value Limit write rate (bytes per second) to a device (default [])
|
||||||
|
|
|
@ -48,6 +48,7 @@ Options:
|
||||||
-d, --detach Run container in background and print container ID
|
-d, --detach Run container in background and print container ID
|
||||||
--detach-keys string Override the key sequence for detaching a container
|
--detach-keys string Override the key sequence for detaching a container
|
||||||
--device value Add a host device to the container (default [])
|
--device value Add a host device to the container (default [])
|
||||||
|
--device-cgroup-rule value Add a rule to the cgroup allowed devices list
|
||||||
--device-read-bps value Limit read rate (bytes per second) from a device (default [])
|
--device-read-bps value Limit read rate (bytes per second) from a device (default [])
|
||||||
--device-read-iops value Limit read rate (IO per second) from a device (default [])
|
--device-read-iops value Limit read rate (IO per second) from a device (default [])
|
||||||
--device-write-bps value Limit write rate (bytes per second) to a device (default [])
|
--device-write-bps value Limit write rate (bytes per second) to a device (default [])
|
||||||
|
|
|
@ -27,6 +27,7 @@ docker-run - Run a command in a new container
|
||||||
[**-d**|**--detach**]
|
[**-d**|**--detach**]
|
||||||
[**--detach-keys**[=*[]*]]
|
[**--detach-keys**[=*[]*]]
|
||||||
[**--device**[=*[]*]]
|
[**--device**[=*[]*]]
|
||||||
|
[**--device-cgroup-rule**[=*[]*]]
|
||||||
[**--device-read-bps**[=*[]*]]
|
[**--device-read-bps**[=*[]*]]
|
||||||
[**--device-read-iops**[=*[]*]]
|
[**--device-read-iops**[=*[]*]]
|
||||||
[**--device-write-bps**[=*[]*]]
|
[**--device-write-bps**[=*[]*]]
|
||||||
|
@ -246,6 +247,16 @@ See **config-json(5)** for documentation on using a configuration file.
|
||||||
**--device**=[]
|
**--device**=[]
|
||||||
Add a host device to the container (e.g. --device=/dev/sdc:/dev/xvdc:rwm)
|
Add a host device to the container (e.g. --device=/dev/sdc:/dev/xvdc:rwm)
|
||||||
|
|
||||||
|
**--device-cgroup-rule**=[]
|
||||||
|
Add a rule to the cgroup allowed devices list.
|
||||||
|
|
||||||
|
The rule is expected to be in the format specified in the Linux kernel documentation (Documentation/cgroup-v1/devices.txt):
|
||||||
|
- type: `a` (all), `c` (char) or `b` (block)
|
||||||
|
- major and minor: either a number or `*` for all
|
||||||
|
- permission: a composition of `r` (read), `w` (write) and `m` (mknod)
|
||||||
|
|
||||||
|
Example: `c 1:3 mr`: allow for character device with major `1` and minor `3` to be created (`m`) and read (`r`)
|
||||||
|
|
||||||
**--device-read-bps**=[]
|
**--device-read-bps**=[]
|
||||||
Limit read rate from a device (e.g. --device-read-bps=/dev/sda:1mb)
|
Limit read rate from a device (e.g. --device-read-bps=/dev/sda:1mb)
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue