Skip to content

Commit

Permalink
Add text about extensions
Browse files Browse the repository at this point in the history
Mimic opencontainers/image-spec#164
and they should be kept in-sync

Signed-off-by: Doug Davis <dug@us.ibm.com>
  • Loading branch information
Doug Davis committed Jul 21, 2016
1 parent b45aa77 commit 8987aad
Showing 1 changed file with 13 additions and 3 deletions.
16 changes: 13 additions & 3 deletions config.md
Original file line number Diff line number Diff line change
Expand Up @@ -308,15 +308,25 @@ The semantics are the same as `Path`, `Args` and `Env` in [golang Cmd](https://g

This OPTIONAL property contains arbitrary metadata for the container.
This information MAY be structured or unstructured.
Annotations are key-value maps.
Annotations MUST be key-value maps where both the key and value MUST be strings.
While the value MUST be present, it MAY be an empty string.
Keys MUST be unique, and best practice is to namespace the keys.
Keys SHOULD be named using a reverse domain notation - e.g. `com.example.myKey`.
Keys using the `org.opencontainers` namespace are reserved and MUST NOT be used.
If there are no annotations then this property MAY either be absent or an empty map.
Implementations that are reading/processing this configuration file MUST NOT generate an error if they encounter an unknown annotation key.

```json
"annotations": {
"key1" : "value1",
"key2" : "value2"
"example.com/gpu-cores" : "2"
}
```

## Extensibility
The `annotations` property MAY be used as an extensibility point to include additional information that is not defined as part of this specification.
Implementations that are reading/processing this configuration file MUST NOT generate an error if they encounter an unkown property.
Instead they MUST ignore unknown properties.

## Configuration Schema Example

Here is a full example `config.json` for reference.
Expand Down

0 comments on commit 8987aad

Please sign in to comment.