Files
docker-docs/_includes/cli.md
Sebastiaan van Stijn f39a74da3d _includes/cli.md: fix generated links to other commands
When generating HTML pages, Jekyll will generate a directory named after the name
of the Markdown file, and generate an index.html file inside that directory. For
example, for a markdown file named /foo/bar/mypage.md, Jekyll generates a HTML
file named  /foo/bar/mypage/index.html.

This means that all links relative to mypage.md, and expect those links to be
relative to the /foo/bar/ directory, will actually end up being relative to
/foo/bar/mypage/.

Unfortunately, Jekyll / Liquid does not have a variable that holds the parent
directory of the _markdown_ file, so we have to generate it by taking `page.path`
(which holds the absolute path of the markdownfile), and remove the filename from
that path.

After generating that path, we prepend that path to URLs linking to related
commands (parent commands and child commands), as all reference files are in the
same path.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2020-04-23 10:00:48 +02:00

7.9 KiB

{% capture tabChar %} {% endcapture %} {% assign controller_data = site.data[include.datafolder][include.datafile] %} {% assign parentPath = page.path | prepend: "/" | remove: page.name %}

Description

{{ controller_data.short }}

{% if controller_data.min_api_version %}

API {{ controller_data.min_api_version }}+  The client and daemon API must both be at least {{ controller_data.min_api_version }} to use this command. Use the docker version command on the client to check your client and daemon API versions.

{% endif %}

{% if controller_data.deprecated %}

This command is deprecated{: target="blank" class=""}.

It may be removed in a future Docker version. {: .warning }

{% endif %}

{% if page.enterprise_only == true %}

This command is only available on Docker Enterprise Edition.

Learn more about Docker Enterprise products{: target="blank" class=""}. {: .important }

{% endif %}

{% if controller_data.experimental %}

This command is experimental.

This command is experimental on the Docker daemon. It should not be used in production environments. To enable experimental features on the Docker daemon, edit the daemon.json and set experimental to true.

{% include experimental.md %}

{% endif %}

{% if controller_data.experimentalcli %}

This command is experimental on the Docker client.

It should not be used in production environments.

To enable experimental features in the Docker CLI, edit the config.json and set experimental to enabled. You can go here for more information. {: .important }

{% endif %}

{% capture command-orchestrator %} {% if controller_data.swarm %}

Swarm This command works with the Swarm orchestrator.

{% endif %} {% if controller_data.kubernetes %}

Kubernetes This command works with the Kubernetes orchestrator.

{% endif %} {% endcapture %}{{ command-orchestrator }}

{% if controller_data.usage %}

Usage

{{ controller_data.usage | replace: tabChar, "" | strip }}{% if controller_data.cname %} COMMAND{% endif %}

{% endif %} {% unless controller_data.long == controller_data.short %}

Extended description

{{ controller_data.long }}

{% endunless %}

{% if controller_data.examples %} For example uses of this command, refer to the examples section below. {% endif %}

{% if controller_data.options %} {% if controller_data.inherited_options %} {% assign alloptions = controller_data.options | concat:controller_data.inherited_options %} {% else %} {% assign alloptions = controller_data.options %} {% endif %}

Options

{% for option in alloptions %} {% capture deprecated-badge %}{% if option.deprecated %}deprecated{% endif %}{% endcapture %} {% capture experimental-daemon-badge %}{% if option.experimental %}experimental (daemon){% endif %}{% endcapture %} {% capture experimental-cli-badge %}{% if option.experimentalcli %}experimental (CLI){% endif %}{% endcapture %} {% capture min-api %}{% if option.min_api_version %}API {{ option.min_api_version }}+{% endif %}{%endcapture%} {% capture flag-orchestrator %}{% if option.swarm %}Swarm{% endif %}{% if option.kubernetes %}Kubernetes{% endif %}{% endcapture %} {% capture all-badges %}{{ deprecated-badge }}{{ experimental-daemon-badge }}{{ experimental-cli-badge }}{{ min-api }}{{ flag-orchestrator }}{% endcapture %} {% assign defaults-to-skip = "[],map[],false,0,0s,default,'',\"\"" | split: ',' %} {% capture option-default %}{% if option.default_value %}{% unless defaults-to-skip contains option.default_value or defaults-to-skip == blank %}`{{ option.default_value }}`{% endunless %}{% endif %}{% endcapture %} {% endfor %}
Name, shorthand Default Description
`--{{ option.option }}{% if option.shorthand %} , -{{ option.shorthand }}{% endif %}` {{ option-default }} {% if all-badges != '' %}{{ all-badges | strip }}
{% endif %}{{ option.description | strip }}
{% endif %}

{% if controller_data.examples %}

Examples

{{ controller_data.examples }}

{% endif %}

{% if controller_data.pname %} {% unless controller_data.pname == include.datafile %}

Parent command

{% capture parentfile %}{{ controller_data.plink | remove_first: ".yaml" | remove_first: "docker_" }}{% endcapture %} {% capture parentdatafile %}{{ controller_data.plink | remove_first: ".yaml" }}{% endcapture %} {% capture parentDesc %}{{ site.data[include.datafolder][parentdatafile].short }}{% endcapture %}

Command Description
[{{ controller_data.pname }}]({{parentPath}}{{ parentfile }}/) {{ parentDesc }}

{% endunless %} {% endif %}

{% if controller_data.cname %}

Child commands

{% for command in controller_data.cname %} {% capture dataFileName %}{{ command | strip | replace: " ", "_" }}{% endcapture %} {% endfor %}
Command Description
[{{ command }}]({{ parentPath }}{{ dataFileName | remove_first: "docker_" }}/) {{ site.data[include.datafolder][dataFileName].short }}
{% endif %}

{% unless controller_data.pname == "docker" or controller_data.pname == "dockerd" or include.datafile=="docker" %}

{% for command in site.data[include.datafolder][parentdatafile].cname %} {% capture dataFileName %}{{ command | strip | replace: " ", "_" }}{% endcapture %} {% endfor %}
Command Description
[{{ command }}]({{ parentPath }}{{ dataFileName | remove_first: "docker_" }}/) {{ site.data[include.datafolder][dataFileName].short }}

{% endunless %}