Fix 19 typos, grammatical errors and duplicated words. These fixes have minimal impact on the code as these are either in the doc files or in comments inside the code files. Signed-off-by: Abdur Rehman <abdur_rehman@mentor.com>
123 lines
3.6 KiB
Markdown
123 lines
3.6 KiB
Markdown
---
|
|
title: "inspect"
|
|
description: "The inspect command description and usage"
|
|
keywords: "inspect, container, json"
|
|
---
|
|
|
|
<!-- This file is maintained within the docker/cli GitHub
|
|
repository at https://github.com/docker/cli/. Make all
|
|
pull requests against that repo. If you see this file in
|
|
another repository, consider it read-only there, as it will
|
|
periodically be overwritten by the definitive file. Pull
|
|
requests which include edits to this file in other repositories
|
|
will be rejected.
|
|
-->
|
|
|
|
# inspect
|
|
|
|
```markdown
|
|
Usage: docker inspect [OPTIONS] NAME|ID [NAME|ID...]
|
|
|
|
Return low-level information on Docker object(s) (e.g. container, image, volume,
|
|
network, node, service, or task) identified by name or ID
|
|
|
|
Options:
|
|
-f, --format Format the output using the given Go template
|
|
--help Print usage
|
|
-s, --size Display total file sizes if the type is container
|
|
--type Return JSON for specified type
|
|
```
|
|
|
|
## Description
|
|
|
|
Docker inspect provides detailed information on constructs controlled by Docker.
|
|
|
|
By default, `docker inspect` will render results in a JSON array.
|
|
|
|
## Request a custom response format (--format)
|
|
|
|
If a format is specified, the given template will be executed for each result.
|
|
|
|
Go's [text/template](http://golang.org/pkg/text/template/) package
|
|
describes all the details of the format.
|
|
|
|
## Specify target type (--type)
|
|
|
|
`--type container|image|node|network|secret|service|volume|task|plugin`
|
|
|
|
The `docker inspect` command matches any type of object by either ID or name.
|
|
In some cases multiple type of objects (for example, a container and a volume)
|
|
exist with the same name, making the result ambiguous.
|
|
|
|
To restrict `docker inspect` to a specific type of object, use the `--type`
|
|
option.
|
|
|
|
The following example inspects a _volume_ named "myvolume"
|
|
|
|
```bash
|
|
$ docker inspect --type=volume myvolume
|
|
```
|
|
|
|
## Examples
|
|
|
|
### Get an instance's IP address
|
|
|
|
For the most part, you can pick out any field from the JSON in a fairly
|
|
straightforward manner.
|
|
|
|
```bash
|
|
$ docker inspect --format='{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' $INSTANCE_ID
|
|
```
|
|
|
|
### Get an instance's MAC address
|
|
|
|
```bash
|
|
$ docker inspect --format='{{range .NetworkSettings.Networks}}{{.MacAddress}}{{end}}' $INSTANCE_ID
|
|
```
|
|
|
|
### Get an instance's log path
|
|
|
|
```bash
|
|
$ docker inspect --format='{{.LogPath}}' $INSTANCE_ID
|
|
```
|
|
|
|
### Get an instance's image name
|
|
|
|
```bash
|
|
$ docker inspect --format='{{.Config.Image}}' $INSTANCE_ID
|
|
```
|
|
|
|
### List all port bindings
|
|
|
|
You can loop over arrays and maps in the results to produce simple text
|
|
output:
|
|
|
|
```bash
|
|
$ docker inspect --format='{{range $p, $conf := .NetworkSettings.Ports}} {{$p}} -> {{(index $conf 0).HostPort}} {{end}}' $INSTANCE_ID
|
|
```
|
|
|
|
### Find a specific port mapping
|
|
|
|
The `.Field` syntax doesn't work when the field name begins with a
|
|
number, but the template language's `index` function does. The
|
|
`.NetworkSettings.Ports` section contains a map of the internal port
|
|
mappings to a list of external address/port objects. To grab just the
|
|
numeric public port, you use `index` to find the specific port map, and
|
|
then `index` 0 contains the first object inside of that. Then we ask for
|
|
the `HostPort` field to get the public address.
|
|
|
|
```bash
|
|
$ docker inspect --format='{{(index (index .NetworkSettings.Ports "8787/tcp") 0).HostPort}}' $INSTANCE_ID
|
|
```
|
|
|
|
### Get a subsection in JSON format
|
|
|
|
If you request a field which is itself a structure containing other
|
|
fields, by default you get a Go-style dump of the inner values.
|
|
Docker adds a template function, `json`, which can be applied to get
|
|
results in JSON format.
|
|
|
|
```bash
|
|
$ docker inspect --format='{{json .Config}}' $INSTANCE_ID
|
|
```
|