config: JSON examples

* "complete" JSON example
* fix a couple of values
* fix a missing comma

Signed-off-by: Vincent Batts <vbatts@hashbangbash.com>
This commit is contained in:
Vincent Batts 2016-04-06 17:07:17 -04:00
parent d118a8ff53
commit d4e7326d50
2 changed files with 206 additions and 22 deletions

View File

@ -241,7 +241,7 @@ For more information on how these two settings work together, see [the memory cg
###### Example ###### Example
```json ```json
"oomScoreAdj": 0 "oomScoreAdj": 100
``` ```
#### Memory #### Memory
@ -251,9 +251,9 @@ For more information, see [the memory cgroup man page][cgroup-v1-memory].
The following parameters can be specified to setup the controller: The following parameters can be specified to setup the controller:
* **`limit`** *(uint64, optional)* - sets limit of memory usage * **`limit`** *(uint64, optional)* - sets limit of memory usage in bytes
* **`reservation`** *(uint64, optional)* - sets soft limit of memory usage * **`reservation`** *(uint64, optional)* - sets soft limit of memory usage in bytes
* **`swap`** *(uint64, optional)* - sets limit of memory+Swap usage * **`swap`** *(uint64, optional)* - sets limit of memory+Swap usage
@ -267,9 +267,9 @@ The following parameters can be specified to setup the controller:
```json ```json
"memory": { "memory": {
"limit": 0, "limit": 536870912,
"reservation": 0, "reservation": 536870912,
"swap": 0, "swap": 536870912,
"kernel": 0, "kernel": 0,
"kernelTCP": 0, "kernelTCP": 0,
"swappiness": 0 "swappiness": 0
@ -301,13 +301,13 @@ The following parameters can be specified to setup the controller:
```json ```json
"cpu": { "cpu": {
"shares": 0, "shares": 1024,
"quota": 0, "quota": 1000000,
"period": 0, "period": 500000,
"realtimeRuntime": 0, "realtimeRuntime": 950000,
"realtimePeriod": 0, "realtimePeriod": 1000000,
"cpus": "", "cpus": "2-3",
"mems": "" "mems": "0-7"
} }
``` ```
@ -337,8 +337,8 @@ The following parameters can be specified to setup the controller:
```json ```json
"blockIO": { "blockIO": {
"blkioWeight": 0, "blkioWeight": 10,
"blkioLeafWeight": 0, "blkioLeafWeight": 10,
"blkioWeightDevice": [ "blkioWeightDevice": [
{ {
"major": 8, "major": 8,

198
config.md
View File

@ -232,7 +232,7 @@ If a hook returns a non-zero exit code, then an error is logged and the remainin
], ],
"poststart": [ "poststart": [
{ {
"path": "/usr/bin/notify-start" "path": "/usr/bin/notify-start",
"timeout": 5 "timeout": 5
} }
], ],
@ -269,7 +269,7 @@ Here is a full example `config.json` for reference.
```json ```json
{ {
"ociVersion": "0.3.0", "ociVersion": "0.5.0-dev",
"platform": { "platform": {
"os": "linux", "os": "linux",
"arch": "amd64" "arch": "amd64"
@ -284,6 +284,20 @@ Here is a full example `config.json` for reference.
6 6
] ]
}, },
"uidMappings": [
{
"hostID": 1000,
"containerID": 0,
"size": 32000
}
],
"gidMappings": [
{
"hostID": 1000,
"containerID": 0,
"size": 32000
}
],
"args": [ "args": [
"sh" "sh"
], ],
@ -298,14 +312,20 @@ Here is a full example `config.json` for reference.
"CAP_NET_BIND_SERVICE" "CAP_NET_BIND_SERVICE"
], ],
"rlimits": [ "rlimits": [
{
"type": "RLIMIT_CORE",
"hard": 1024,
"soft": 1024
},
{ {
"type": "RLIMIT_NOFILE", "type": "RLIMIT_NOFILE",
"hard": 1024, "hard": 1024,
"soft": 1024 "soft": 1024
} }
], ],
"apparmorProfile": "", "apparmorProfile": "acme_secure_profile",
"selinuxLabel": "" "selinuxLabel": "system_u:system_r:svirt_lxc_net_t:s0:c124,c675",
"noNewPrivileges": true
}, },
"root": { "root": {
"path": "rootfs", "path": "rootfs",
@ -390,20 +410,166 @@ Here is a full example `config.json` for reference.
"hooks": { "hooks": {
"prestart": [ "prestart": [
{ {
"path": "/usr/bin/uptime", "path": "/usr/bin/fix-mounts",
"args": [ "args": [
"/usr/bin/uptime" "fix-mounts",
"arg1",
"arg2"
], ],
"env": [] "env": [
"key1=value1"
]
},
{
"path": "/usr/bin/setup-network"
}
],
"poststart": [
{
"path": "/usr/bin/notify-start",
"timeout": 5
}
],
"poststop": [
{
"path": "/usr/sbin/cleanup.sh",
"args": [
"cleanup.sh",
"-f"
]
} }
] ]
}, },
"linux": { "linux": {
"devices": [
{
"path": "/dev/fuse",
"type": "c",
"major": 10,
"minor": 229,
"fileMode": 438,
"uid": 0,
"gid": 0
},
{
"path": "/dev/sda",
"type": "b",
"major": 8,
"minor": 0,
"fileMode": 432,
"uid": 0,
"gid": 0
}
],
"sysctl": {
"net.ipv4.ip_forward": "1",
"net.core.somaxconn": "256"
},
"cgroupsPath": "/myRuntime/myContainer",
"resources": { "resources": {
"network": {
"classID": 1048577,
"priorities": [
{
"name": "eth0",
"priority": 500
},
{
"name": "eth1",
"priority": 1000
}
]
},
"pids": {
"limit": 32771
},
"hugepageLimits": [
{
"pageSize": "2MB",
"limit": 9223372036854772000
}
],
"oomScoreAdj": 100,
"memory": {
"limit": 536870912,
"reservation": 536870912,
"swap": 536870912,
"kernel": 0,
"kernelTCP": 0,
"swappiness": 0
},
"cpu": {
"shares": 1024,
"quota": 1000000,
"period": 500000,
"realtimeRuntime": 950000,
"realtimePeriod": 1000000,
"cpus": "2-3",
"mems": "0-7"
},
"disableOOMKiller": false,
"devices": [ "devices": [
{ {
"allow": false, "allow": false,
"access": "rwm" "access": "rwm"
},
{
"allow": true,
"type": "c",
"major": 10,
"minor": 229,
"access": "rw"
},
{
"allow": true,
"type": "b",
"major": 8,
"minor": 0,
"access": "r"
}
],
"blockIO": {
"blkioWeight": 10,
"blkioLeafWeight": 10,
"blkioWeightDevice": [
{
"major": 8,
"minor": 0,
"weight": 500,
"leafWeight": 300
},
{
"major": 8,
"minor": 16,
"weight": 500
}
],
"blkioThrottleReadBpsDevice": [
{
"major": 8,
"minor": 0,
"rate": 600
}
],
"blkioThrottleWriteIOPSDevice": [
{
"major": 8,
"minor": 16,
"rate": 300
}
]
}
},
"rootfsPropagation": "slave",
"seccomp": {
"defaultAction": "SCMP_ACT_ALLOW",
"architectures": [
"SCMP_ARCH_X86"
],
"syscalls": [
{
"name": "getcwd",
"action": "SCMP_ACT_ERRNO"
} }
] ]
}, },
@ -423,7 +589,25 @@ Here is a full example `config.json` for reference.
{ {
"type": "mount" "type": "mount"
} }
],
"maskedPaths": [
"/proc/kcore",
"/proc/latency_stats",
"/proc/timer_stats",
"/proc/sched_debug"
],
"readonlyPaths": [
"/proc/asound",
"/proc/bus",
"/proc/fs",
"/proc/irq",
"/proc/sys",
"/proc/sysrq-trigger"
] ]
},
"annotations": {
"key1": "value1",
"key2": "value2"
} }
} }
``` ```