This commit is contained in:
felixfontein 2025-11-16 09:10:43 +00:00
parent 189075f832
commit 84b64d2159
3 changed files with 4 additions and 2 deletions

View File

@ -431,7 +431,8 @@ see <a class="reference internal" href="#ansible-collections-community-docker-do
<tr class="row-odd"><td><div class="ansible-option-cell">
<div class="ansibleOptionAnchor" id="attribute-idempotent"></div><p class="ansible-option-title" id="ansible-collections-community-docker-docker-image-export-module-attribute-idempotent"><strong>idempotent</strong></p>
<a class="ansibleOptionLink" href="#attribute-idempotent" title="Permalink to this attribute"></a></div></td>
<td><div class="ansible-option-cell"><p><strong class="ansible-attribute-support-label">Support: </strong><strong class="ansible-attribute-support-full">full</strong></p>
<td><div class="ansible-option-cell"><p><strong class="ansible-attribute-support-label">Support: </strong><strong class="ansible-attribute-support-partial">partial</strong></p>
<p>Whether the module is idempotent depends on the storage API used for images, which determines how the image ID is computed. The idempotency check needs that the image ID equals the ID stored in archives <code class="docutils literal notranslate"><span class="pre">manifest.json</span></code>. This seemed to have worked fine with the default storage backend up to Docker 28, but seems to have changed in Docker 29.</p>
</div></td>
<td><div class="ansible-option-cell"><p>When run twice in a row outside check mode, with the same arguments, the second invocation indicates no change.</p>
<p>This assumes that the system controlled/queried by the module has not changed in a relevant way.</p>

View File

@ -725,6 +725,7 @@ see <a class="reference internal" href="#ansible-collections-community-docker-do
<p class="admonition-title">Note</p>
<ul class="simple">
<li><p>Building images is done using Docker daemons API. It is not possible to use BuildKit / buildx this way. Use <a class="reference internal" href="docker_image_build_module.html#ansible-collections-community-docker-docker-image-build-module"><span class="std std-ref">community.docker.docker_image_build</span></a> to build images with BuildKit.</p></li>
<li><p>Exporting images is generally not idempotent. It depends on whether the image ID equals the IDs found in the generated tarballs <code class="docutils literal notranslate"><span class="pre">manifest.json</span></code>. This was the case with the default storage backend up to Docker 28, but seems to have changed in Docker 29.</p></li>
<li><p>Connect to the Docker daemon by providing parameters with each task or by defining environment variables. You can define <a class="reference internal" href="docsite/scenario_guide.html#envvar-DOCKER_HOST"><code class="xref std std-envvar docutils literal notranslate"><span class="pre">DOCKER_HOST</span></code></a>, <a class="reference internal" href="docsite/scenario_guide.html#envvar-DOCKER_TLS_HOSTNAME"><code class="xref std std-envvar docutils literal notranslate"><span class="pre">DOCKER_TLS_HOSTNAME</span></code></a>, <a class="reference internal" href="docsite/scenario_guide.html#envvar-DOCKER_API_VERSION"><code class="xref std std-envvar docutils literal notranslate"><span class="pre">DOCKER_API_VERSION</span></code></a>, <a class="reference internal" href="docsite/scenario_guide.html#envvar-DOCKER_CERT_PATH"><code class="xref std std-envvar docutils literal notranslate"><span class="pre">DOCKER_CERT_PATH</span></code></a>, <a class="reference internal" href="docsite/scenario_guide.html#envvar-DOCKER_TLS"><code class="xref std std-envvar docutils literal notranslate"><span class="pre">DOCKER_TLS</span></code></a>, <a class="reference internal" href="docsite/scenario_guide.html#envvar-DOCKER_TLS_VERIFY"><code class="xref std std-envvar docutils literal notranslate"><span class="pre">DOCKER_TLS_VERIFY</span></code></a> and <a class="reference internal" href="docsite/scenario_guide.html#envvar-DOCKER_TIMEOUT"><code class="xref std std-envvar docutils literal notranslate"><span class="pre">DOCKER_TIMEOUT</span></code></a>. If you are using docker machine, run the script shipped with the product that sets up the environment. It will set these variables for you. See <a class="reference external" href="https://docs.docker.com/machine/reference/env/">https://docs.docker.com/machine/reference/env/</a> for more details.</p></li>
<li><p>This module does <strong>not</strong> use the <a class="reference external" href="https://docker-py.readthedocs.io/en/stable/">Docker SDK for Python</a> to communicate with the Docker daemon. It uses code derived from the Docker SDK or Python that is included in this collection.</p></li>
</ul>

File diff suppressed because one or more lines are too long