<inputclass="md-option"data-md-color-media="(prefers-color-scheme: light)"data-md-color-scheme="default"data-md-color-primary="black"data-md-color-accent="grey"aria-label="Switch to dark mode"type="radio"name="__palette"id="__palette_1">
<labelclass="md-header__button md-icon"title="Switch to dark mode"for="__palette_2"hidden>
@ -122,6 +122,7 @@
<inputclass="md-option"data-md-color-media="(prefers-color-scheme: dark)"data-md-color-scheme="slate"data-md-color-primary="light-blue"data-md-color-accent=""aria-label="Switch to light mode"type="radio"name="__palette"id="__palette_2">
<labelclass="md-header__button md-icon"title="Switch to light mode"for="__palette_1"hidden>
<scriptid="__config"type="application/json">{"base":"/v5.5.0","features":["navigation.top","search.suggest","search.highlight","navigation.expand","navigation.tabs"],"search":"/v5.5.0/assets/javascripts/workers/search.db81ec45.min.js","translations":{"clipboard.copied":"Copied to clipboard","clipboard.copy":"Copy to clipboard","search.result.more.one":"1 more on this page","search.result.more.other":"# more on this page","search.result.none":"No matching documents","search.result.one":"1 matching document","search.result.other":"# matching documents","search.result.placeholder":"Type to start searching","search.result.term.missing":"Missing","select.version":"Select version"},"version":{"provider":"mike"}}</script>
<scriptid="__config"type="application/json">{"base":"/v5.5.0","features":["navigation.top","search.suggest","search.highlight","navigation.expand","navigation.tabs"],"search":"/v5.5.0/assets/javascripts/workers/search.b97dbffb.min.js","translations":{"clipboard.copied":"Copied to clipboard","clipboard.copy":"Copy to clipboard","search.config.lang":"en","search.config.pipeline":"trimmer, stopWordFilter","search.config.separator":"[\\s\\-]+","search.placeholder":"Search","search.result.more.one":"1 more on this page","search.result.more.other":"# more on this page","search.result.none":"No matching documents","search.result.one":"1 matching document","search.result.other":"# matching documents","search.result.placeholder":"Type to start searching","search.result.term.missing":"Missing","select.version.title":"Select version"},"version":{"provider":"mike"}}</script>
!function(e,t){"function"==typeofdefine&&define.amd?define(t):"object"==typeofexports?module.exports=t():t()(e.lunr)}(this,function(){returnfunction(e){if(void0===e)thrownewError("Lunr is not present. Please include / require Lunr before this script.");if(void0===e.stemmerSupport)thrownewError("Lunr stemmer support is not present. Please include / require Lunr stemmer support before this script.");e.ta=function(){this.pipeline.reset(),this.pipeline.add(e.ta.trimmer,e.ta.stopWordFilter,e.ta.stemmer),this.searchPipeline&&(this.searchPipeline.reset(),this.searchPipeline.add(e.ta.stemmer))},e.ta.wordCharacters="-உஊ-ஏஐ-ஙச-ட-னப-யர-ஹ-ிீ-ொ-ௐ---௩௪-௯௰-௹௺-a-zA-Za-zA-Z0-90-9",e.ta.trimmer=e.trimmerSupport.generateTrimmer(e.ta.wordCharacters),e.Pipeline.registerFunction(e.ta.trimmer,"trimmer-ta"),e.ta.stopWordFilter=e.generateStopWordFilter("அங்கு அங்கே அது அதை அந்த அவர் அவர்கள் அவள் அவன் அவை ஆக ஆகவே ஆகையால் ஆதலால் ஆதலினால் ஆனாலும் ஆனால் இங்கு இங்கே இது இதை இந்த இப்படி இவர் இவர்கள் இவள் இவன் இவை இவ்வளவு உனக்கு உனது உன் உன்னால் எங்கு எங்கே எது எதை எந்த எப்படி எவர் எவர்கள் எவள் எவன் எவை எவ்வளவு எனக்கு எனது எனவே என் என்ன என்னால் ஏது ஏன் தனது தன்னால் தானே தான் நாங்கள் நாம் நான் நீ நீங்கள்".split(" ")),e.ta.stemmer=function(){returnfunction(e){return"function"==typeofe.update?e.update(function(e){returne}):e}}();vart=e.wordcut;t.init(),e.ta.tokenizer=function(r){if(!arguments.length||null==r||void0==r)return[];if(Array.isArray(r))returnr.map(function(t){returnisLunr2?newe.Token(t.toLowerCase()):t.toLowerCase()});vari=r.toString().toLowerCase().replace(/^\s+/,"");returnt.cut(i).split("|")},e.Pipeline.registerFunction(e.ta.stemmer,"stemmer-ta"),e.Pipeline.registerFunction(e.ta.stopWordFilter,"stopWordFilter-ta")}});
<inputclass="md-option"data-md-color-media="(prefers-color-scheme: light)"data-md-color-scheme="default"data-md-color-primary="black"data-md-color-accent="grey"aria-label="Switch to dark mode"type="radio"name="__palette"id="__palette_1">
<labelclass="md-header__button md-icon"title="Switch to dark mode"for="__palette_2"hidden>
@ -133,6 +129,7 @@
<inputclass="md-option"data-md-color-media="(prefers-color-scheme: dark)"data-md-color-scheme="slate"data-md-color-primary="light-blue"data-md-color-accent=""aria-label="Switch to light mode"type="radio"name="__palette"id="__palette_2">
<labelclass="md-header__button md-icon"title="Switch to light mode"for="__palette_1"hidden>
<scriptid="__config"type="application/json">{"base":"../..","features":["navigation.top","search.suggest","search.highlight","navigation.expand","navigation.tabs"],"search":"../../assets/javascripts/workers/search.db81ec45.min.js","translations":{"clipboard.copied":"Copied to clipboard","clipboard.copy":"Copy to clipboard","search.result.more.one":"1 more on this page","search.result.more.other":"# more on this page","search.result.none":"No matching documents","search.result.one":"1 matching document","search.result.other":"# matching documents","search.result.placeholder":"Type to start searching","search.result.term.missing":"Missing","select.version":"Select version"},"version":{"provider":"mike"}}</script>
<scriptid="__config"type="application/json">{"base":"../..","features":["navigation.top","search.suggest","search.highlight","navigation.expand","navigation.tabs"],"search":"../../assets/javascripts/workers/search.b97dbffb.min.js","translations":{"clipboard.copied":"Copied to clipboard","clipboard.copy":"Copy to clipboard","search.config.lang":"en","search.config.pipeline":"trimmer, stopWordFilter","search.config.separator":"[\\s\\-]+","search.placeholder":"Search","search.result.more.one":"1 more on this page","search.result.more.other":"# more on this page","search.result.none":"No matching documents","search.result.one":"1 matching document","search.result.other":"# matching documents","search.result.placeholder":"Type to start searching","search.result.term.missing":"Missing","select.version.title":"Select version"},"version":{"provider":"mike"}}</script>
<inputclass="md-option"data-md-color-media="(prefers-color-scheme: light)"data-md-color-scheme="default"data-md-color-primary="black"data-md-color-accent="grey"aria-label="Switch to dark mode"type="radio"name="__palette"id="__palette_1">
<labelclass="md-header__button md-icon"title="Switch to dark mode"for="__palette_2"hidden>
@ -133,6 +129,7 @@
<inputclass="md-option"data-md-color-media="(prefers-color-scheme: dark)"data-md-color-scheme="slate"data-md-color-primary="light-blue"data-md-color-accent=""aria-label="Switch to light mode"type="radio"name="__palette"id="__palette_2">
<labelclass="md-header__button md-icon"title="Switch to light mode"for="__palette_1"hidden>
@ -1518,11 +1532,10 @@ The loadbalancer can partly be configured using k3d-defined settings.</p>
<divclass="md-dialog"data-md-component="dialog">
<divclass="md-dialog__inner md-typeset"></div>
</div>
<scriptid="__config"type="application/json">{"base":"../..","features":["navigation.top","search.suggest","search.highlight","navigation.expand","navigation.tabs"],"search":"../../assets/javascripts/workers/search.db81ec45.min.js","translations":{"clipboard.copied":"Copied to clipboard","clipboard.copy":"Copy to clipboard","search.result.more.one":"1 more on this page","search.result.more.other":"# more on this page","search.result.none":"No matching documents","search.result.one":"1 matching document","search.result.other":"# matching documents","search.result.placeholder":"Type to start searching","search.result.term.missing":"Missing","select.version":"Select version"},"version":{"provider":"mike"}}</script>
<scriptid="__config"type="application/json">{"base":"../..","features":["navigation.top","search.suggest","search.highlight","navigation.expand","navigation.tabs"],"search":"../../assets/javascripts/workers/search.b97dbffb.min.js","translations":{"clipboard.copied":"Copied to clipboard","clipboard.copy":"Copy to clipboard","search.config.lang":"en","search.config.pipeline":"trimmer, stopWordFilter","search.config.separator":"[\\s\\-]+","search.placeholder":"Search","search.result.more.one":"1 more on this page","search.result.more.other":"# more on this page","search.result.none":"No matching documents","search.result.one":"1 matching document","search.result.other":"# matching documents","search.result.placeholder":"Type to start searching","search.result.term.missing":"Missing","select.version.title":"Select version"},"version":{"provider":"mike"}}</script>
<inputclass="md-option"data-md-color-media="(prefers-color-scheme: light)"data-md-color-scheme="default"data-md-color-primary="black"data-md-color-accent="grey"aria-label="Switch to dark mode"type="radio"name="__palette"id="__palette_1">
<labelclass="md-header__button md-icon"title="Switch to dark mode"for="__palette_2"hidden>
@ -133,6 +129,7 @@
<inputclass="md-option"data-md-color-media="(prefers-color-scheme: dark)"data-md-color-scheme="slate"data-md-color-primary="light-blue"data-md-color-accent=""aria-label="Switch to light mode"type="radio"name="__palette"id="__palette_2">
<labelclass="md-header__button md-icon"title="Switch to light mode"for="__palette_1"hidden>
@ -1391,11 +1405,10 @@ Single-Node clusters should work though.</p>
<divclass="md-dialog"data-md-component="dialog">
<divclass="md-dialog__inner md-typeset"></div>
</div>
<scriptid="__config"type="application/json">{"base":"../..","features":["navigation.top","search.suggest","search.highlight","navigation.expand","navigation.tabs"],"search":"../../assets/javascripts/workers/search.db81ec45.min.js","translations":{"clipboard.copied":"Copied to clipboard","clipboard.copy":"Copy to clipboard","search.result.more.one":"1 more on this page","search.result.more.other":"# more on this page","search.result.none":"No matching documents","search.result.one":"1 matching document","search.result.other":"# matching documents","search.result.placeholder":"Type to start searching","search.result.term.missing":"Missing","select.version":"Select version"},"version":{"provider":"mike"}}</script>
<scriptid="__config"type="application/json">{"base":"../..","features":["navigation.top","search.suggest","search.highlight","navigation.expand","navigation.tabs"],"search":"../../assets/javascripts/workers/search.b97dbffb.min.js","translations":{"clipboard.copied":"Copied to clipboard","clipboard.copy":"Copy to clipboard","search.config.lang":"en","search.config.pipeline":"trimmer, stopWordFilter","search.config.separator":"[\\s\\-]+","search.placeholder":"Search","search.result.more.one":"1 more on this page","search.result.more.other":"# more on this page","search.result.none":"No matching documents","search.result.one":"1 matching document","search.result.other":"# matching documents","search.result.placeholder":"Type to start searching","search.result.term.missing":"Missing","select.version.title":"Select version"},"version":{"provider":"mike"}}</script>
<inputclass="md-option"data-md-color-media="(prefers-color-scheme: light)"data-md-color-scheme="default"data-md-color-primary="black"data-md-color-accent="grey"aria-label="Switch to dark mode"type="radio"name="__palette"id="__palette_1">
<labelclass="md-header__button md-icon"title="Switch to dark mode"for="__palette_2"hidden>
@ -133,6 +129,7 @@
<inputclass="md-option"data-md-color-media="(prefers-color-scheme: dark)"data-md-color-scheme="slate"data-md-color-primary="light-blue"data-md-color-accent=""aria-label="Switch to light mode"type="radio"name="__palette"id="__palette_2">
<labelclass="md-header__button md-icon"title="Switch to light mode"for="__palette_1"hidden>
@ -1530,11 +1544,10 @@ Some parts of the documentation are being auto-generated, like <a href="https://
<divclass="md-dialog"data-md-component="dialog">
<divclass="md-dialog__inner md-typeset"></div>
</div>
<scriptid="__config"type="application/json">{"base":"../..","features":["navigation.top","search.suggest","search.highlight","navigation.expand","navigation.tabs"],"search":"../../assets/javascripts/workers/search.db81ec45.min.js","translations":{"clipboard.copied":"Copied to clipboard","clipboard.copy":"Copy to clipboard","search.result.more.one":"1 more on this page","search.result.more.other":"# more on this page","search.result.none":"No matching documents","search.result.one":"1 matching document","search.result.other":"# matching documents","search.result.placeholder":"Type to start searching","search.result.term.missing":"Missing","select.version":"Select version"},"version":{"provider":"mike"}}</script>
<scriptid="__config"type="application/json">{"base":"../..","features":["navigation.top","search.suggest","search.highlight","navigation.expand","navigation.tabs"],"search":"../../assets/javascripts/workers/search.b97dbffb.min.js","translations":{"clipboard.copied":"Copied to clipboard","clipboard.copy":"Copy to clipboard","search.config.lang":"en","search.config.pipeline":"trimmer, stopWordFilter","search.config.separator":"[\\s\\-]+","search.placeholder":"Search","search.result.more.one":"1 more on this page","search.result.more.other":"# more on this page","search.result.none":"No matching documents","search.result.one":"1 matching document","search.result.other":"# matching documents","search.result.placeholder":"Type to start searching","search.result.term.missing":"Missing","select.version.title":"Select version"},"version":{"provider":"mike"}}</script>
<inputclass="md-option"data-md-color-media="(prefers-color-scheme: light)"data-md-color-scheme="default"data-md-color-primary="black"data-md-color-accent="grey"aria-label="Switch to dark mode"type="radio"name="__palette"id="__palette_1">
<labelclass="md-header__button md-icon"title="Switch to dark mode"for="__palette_2"hidden>
@ -131,6 +129,7 @@
<inputclass="md-option"data-md-color-media="(prefers-color-scheme: dark)"data-md-color-scheme="slate"data-md-color-primary="light-blue"data-md-color-accent=""aria-label="Switch to light mode"type="radio"name="__palette"id="__palette_2">
<labelclass="md-header__button md-icon"title="Switch to light mode"for="__palette_1"hidden>
@ -1465,11 +1466,10 @@ We test a full cluster lifecycle with different <a href="https://update.k3s.io/v
<divclass="md-dialog"data-md-component="dialog">
<divclass="md-dialog__inner md-typeset"></div>
</div>
<scriptid="__config"type="application/json">{"base":"../..","features":["navigation.top","search.suggest","search.highlight","navigation.expand","navigation.tabs"],"search":"../../assets/javascripts/workers/search.db81ec45.min.js","translations":{"clipboard.copied":"Copied to clipboard","clipboard.copy":"Copy to clipboard","search.result.more.one":"1 more on this page","search.result.more.other":"# more on this page","search.result.none":"No matching documents","search.result.one":"1 matching document","search.result.other":"# matching documents","search.result.placeholder":"Type to start searching","search.result.term.missing":"Missing","select.version":"Select version"},"version":{"provider":"mike"}}</script>
<scriptid="__config"type="application/json">{"base":"../..","features":["navigation.top","search.suggest","search.highlight","navigation.expand","navigation.tabs"],"search":"../../assets/javascripts/workers/search.b97dbffb.min.js","translations":{"clipboard.copied":"Copied to clipboard","clipboard.copy":"Copy to clipboard","search.config.lang":"en","search.config.pipeline":"trimmer, stopWordFilter","search.config.separator":"[\\s\\-]+","search.placeholder":"Search","search.result.more.one":"1 more on this page","search.result.more.other":"# more on this page","search.result.none":"No matching documents","search.result.one":"1 matching document","search.result.other":"# matching documents","search.result.placeholder":"Type to start searching","search.result.term.missing":"Missing","select.version.title":"Select version"},"version":{"provider":"mike"}}</script>
<inputclass="md-option"data-md-color-media="(prefers-color-scheme: light)"data-md-color-scheme="default"data-md-color-primary="black"data-md-color-accent="grey"aria-label="Switch to dark mode"type="radio"name="__palette"id="__palette_1">
<labelclass="md-header__button md-icon"title="Switch to dark mode"for="__palette_2"hidden>
@ -133,6 +129,7 @@
<inputclass="md-option"data-md-color-media="(prefers-color-scheme: dark)"data-md-color-scheme="slate"data-md-color-primary="light-blue"data-md-color-accent=""aria-label="Switch to light mode"type="radio"name="__palette"id="__palette_2">
<labelclass="md-header__button md-icon"title="Switch to light mode"for="__palette_1"hidden>
<h2id="issues-with-btrfs">Issues with BTRFS<aclass="headerlink"href="#issues-with-btrfs"title="Permanent link">¶</a></h2>
<ul>
<li>As <ahref="https://github.com/jaredallard">@jaredallard</a><ahref="https://github.com/k3d-io/k3d/pull/48">pointed out</a>, people running <code>k3d</code> on a system with <strong>btrfs</strong>, may need to mount <code>/dev/mapper</code> into the nodes for the setup to work.<ul>
<li>This will do: <codeclass="highlight">k3d<spanclass="w"></span>cluster<spanclass="w"></span>create<spanclass="w"></span>CLUSTER_NAME<spanclass="w"></span>-v<spanclass="w"></span>/dev/mapper:/dev/mapper</code></li>
<li>This will do: <codeclass="highlight">k3d cluster createCLUSTER_NAME-v/dev/mapper:/dev/mapper</code></li>
</ul>
</li>
</ul>
<h2id="issues-with-zfs">Issues with ZFS<aclass="headerlink"href="#issues-with-zfs"title="Permanent link">¶</a></h2>
<ul>
<li>
<p>k3s currently has <ahref="https://github.com/rancher/k3s/issues/66">no support for ZFS</a> and thus, creating multi-server setups (e.g. <codeclass="highlight">k3d<spanclass="w"></span>cluster<spanclass="w"></span>create<spanclass="w"></span>multiserver<spanclass="w"></span>--servers<spanclass="w"></span><spanclass="m">3</span></code>) fails, because the initializing server node (server flag <code>--cluster-init</code>) errors out with the following log:</p>
<p>k3s currently has <ahref="https://github.com/rancher/k3s/issues/66">no support for ZFS</a> and thus, creating multi-server setups (e.g. <codeclass="highlight">k3d cluster createmultiserver--servers<spanclass="m">3</span></code>) fails, because the initializing server node (server flag <code>--cluster-init</code>) errors out with the following log:</p>
<divclass="highlight"><pre><span></span><code>startingkubernetes:preparingserver:startclusterandhttps:raft_init<spanclass="o">()</span>:io:createI/O capabilitiesprobefile:posix_allocate:operation not supported on socket
</code></pre></div>
<ul>
<li>This issue can be worked around by providing docker with a different filesystem (that’s also better for docker-in-docker stuff).</li>
@ -1618,9 +1601,9 @@
<li>clean up or expand docker root filesystem</li>
<li>
<p>change the kubelet’s eviction thresholds upon cluster creation:</p>
<li><strong>Note</strong>: There are many ways to use the <code>"</code> and <code>'</code> quotes, just be aware, that sometimes shells also try to interpret/interpolate parts of the commands</li>
@ -1682,7 +1665,7 @@ Some can be fixed by passing the <code>HTTP_PROXY</code> environment variables t
<divclass="highlight"><pre><span></span><code>Failed to createpodsandbox:rpcerror:<spanclass="nv">code</span><spanclass="o">=</span>Unknown<spanclass="nv">desc</span><spanclass="o">=</span>failed to getsandboximage<spanclass="s2">"docker.io/rancher/pause:3.1"</span>:failed to pullimage<spanclass="s2">"docker.io/rancher/pause:3.1"</span>:failed to pullandunpackimage<spanclass="s2">"docker.io/rancher/pause:3.1"</span>:failed to resolvereference<spanclass="s2">"docker.io/rancher/pause:3.1"</span>:failed to<spanclass="k">do</span>request:Headhttps://registry-1.docker.io/v2/rancher/pause/manifests/3.1:x509: certificatesignedbyunknown authority
</code></pre></div>
</li>
</ul>
@ -1712,10 +1695,10 @@ Some can be fixed by passing the <code>HTTP_PROXY</code> environment variables t
<ul>
<li>
<p>Workaround: as a workaround, we can tell <code>kube-proxy</code> to not even try to set this value:</p>
@ -1829,11 +1843,10 @@ See <a href="https://github.com/k3d-io/k3d/discussions/478">https://github.com/k
<divclass="md-dialog"data-md-component="dialog">
<divclass="md-dialog__inner md-typeset"></div>
</div>
<scriptid="__config"type="application/json">{"base":"../..","features":["navigation.top","search.suggest","search.highlight","navigation.expand","navigation.tabs"],"search":"../../assets/javascripts/workers/search.db81ec45.min.js","translations":{"clipboard.copied":"Copied to clipboard","clipboard.copy":"Copy to clipboard","search.result.more.one":"1 more on this page","search.result.more.other":"# more on this page","search.result.none":"No matching documents","search.result.one":"1 matching document","search.result.other":"# matching documents","search.result.placeholder":"Type to start searching","search.result.term.missing":"Missing","select.version":"Select version"},"version":{"provider":"mike"}}</script>
<scriptid="__config"type="application/json">{"base":"../..","features":["navigation.top","search.suggest","search.highlight","navigation.expand","navigation.tabs"],"search":"../../assets/javascripts/workers/search.b97dbffb.min.js","translations":{"clipboard.copied":"Copied to clipboard","clipboard.copy":"Copy to clipboard","search.config.lang":"en","search.config.pipeline":"trimmer, stopWordFilter","search.config.separator":"[\\s\\-]+","search.placeholder":"Search","search.result.more.one":"1 more on this page","search.result.more.other":"# more on this page","search.result.none":"No matching documents","search.result.one":"1 matching document","search.result.other":"# matching documents","search.result.placeholder":"Type to start searching","search.result.term.missing":"Missing","select.version.title":"Select version"},"version":{"provider":"mike"}}</script>
<inputclass="md-option"data-md-color-media="(prefers-color-scheme: light)"data-md-color-scheme="default"data-md-color-primary="black"data-md-color-accent="grey"aria-label="Switch to dark mode"type="radio"name="__palette"id="__palette_1">
<labelclass="md-header__button md-icon"title="Switch to dark mode"for="__palette_2"hidden>
@ -131,6 +129,7 @@
<inputclass="md-option"data-md-color-media="(prefers-color-scheme: dark)"data-md-color-scheme="slate"data-md-color-primary="light-blue"data-md-color-accent=""aria-label="Switch to light mode"type="radio"name="__palette"id="__palette_2">
<labelclass="md-header__button md-icon"title="Switch to light mode"for="__palette_1"hidden>
<h4id="install-current-latest-release">Install current latest release<aclass="headerlink"href="#install-current-latest-release"title="Permanent link">¶</a></h4>
<p><em>Note</em>: The formula can be found in <ahref="https://github.com/Homebrew/homebrew-core/blob/master/Formula/k3d.rb">homebrew/homebrew-core</a> and is mirrored to <ahref="https://github.com/Homebrew/linuxbrew-core/blob/master/Formula/k3d.rb">homebrew/linuxbrew-core</a></p>
<li>install via go: <codeclass="highlight">go<spanclass="w"></span>install<spanclass="w"></span>github.com/k3d-io/k3d@latest</code> (<strong>Note</strong>: this will give you unreleased/bleeding-edge changes)</li>
<li>install via go: <codeclass="highlight">goinstallgithub.com/k3d-io/k3d/v5@latest</code> (<strong>Note</strong>: this will give you unreleased/bleeding-edge changes)</li>
<summary>Getting the cluster’s kubeconfig (included in <code>k3d cluster create</code>)</summary>
<p>Get the new cluster’s connection details merged into your default kubeconfig (usually specified using the <code>KUBECONFIG</code> environment variable or the default path <codeclass="highlight"><spanclass="nv">$HOME</span>/.kube/config</code>) and directly switch to the new context:</p>
<scriptid="__config"type="application/json">{"base":".","features":["navigation.top","search.suggest","search.highlight","navigation.expand","navigation.tabs"],"search":"assets/javascripts/workers/search.db81ec45.min.js","translations":{"clipboard.copied":"Copied to clipboard","clipboard.copy":"Copy to clipboard","search.result.more.one":"1 more on this page","search.result.more.other":"# more on this page","search.result.none":"No matching documents","search.result.one":"1 matching document","search.result.other":"# matching documents","search.result.placeholder":"Type to start searching","search.result.term.missing":"Missing","select.version":"Select version"},"version":{"provider":"mike"}}</script>
<scriptid="__config"type="application/json">{"base":".","features":["navigation.top","search.suggest","search.highlight","navigation.expand","navigation.tabs"],"search":"assets/javascripts/workers/search.b97dbffb.min.js","translations":{"clipboard.copied":"Copied to clipboard","clipboard.copy":"Copy to clipboard","search.config.lang":"en","search.config.pipeline":"trimmer, stopWordFilter","search.config.separator":"[\\s\\-]+","search.placeholder":"Search","search.result.more.one":"1 more on this page","search.result.more.other":"# more on this page","search.result.none":"No matching documents","search.result.one":"1 matching document","search.result.other":"# matching documents","search.result.placeholder":"Type to start searching","search.result.term.missing":"Missing","select.version.title":"Select version"},"version":{"provider":"mike"}}</script>
<inputclass="md-option"data-md-color-media="(prefers-color-scheme: light)"data-md-color-scheme="default"data-md-color-primary="black"data-md-color-accent="grey"aria-label="Switch to dark mode"type="radio"name="__palette"id="__palette_1">
<labelclass="md-header__button md-icon"title="Switch to dark mode"for="__palette_2"hidden>
@ -133,6 +129,7 @@
<inputclass="md-option"data-md-color-media="(prefers-color-scheme: dark)"data-md-color-scheme="slate"data-md-color-primary="light-blue"data-md-color-accent=""aria-label="Switch to light mode"type="radio"name="__palette"id="__palette_2">
<labelclass="md-header__button md-icon"title="Switch to light mode"for="__palette_1"hidden>
@ -1283,9 +1268,9 @@ The docs below assume you want to switch to Calico’s policy engine, thus s
<h2id="1-download-and-modify-the-calico-descriptor">1. Download and modify the Calico descriptor<aclass="headerlink"href="#1-download-and-modify-the-calico-descriptor"title="Permanent link">¶</a></h2>
<p>You can following the <ahref="https://docs.projectcalico.org/master/reference/cni-plugin/configuration">documentation</a></p>
<p>And then you have to change the ConfigMap <code>calico-config</code>. On the <code>cni_network_config</code> add the entry for allowing IP forwarding </p>
<p>Or you can directly use this <ahref="../calico.yaml">calico.yaml</a> manifest</p>
<h2id="2-create-the-cluster-without-flannel-and-with-calico">2. Create the cluster without flannel and with calico<aclass="headerlink"href="#2-create-the-cluster-without-flannel-and-with-calico"title="Permanent link">¶</a></h2>
@ -1295,10 +1280,10 @@ The docs below assume you want to switch to Calico’s policy engine, thus s
<li>mount (<code>--volume</code>) the calico descriptor in the auto deploy manifest directory of k3s <code>/var/lib/rancher/k3s/server/manifests/</code></li>
</ul>
<p>So the command of the cluster creation is (when you are at root of the k3d repository)</p>
@ -1308,32 +1293,32 @@ The docs below assume you want to switch to Calico’s policy engine, thus s
<p>You can add other options, <ahref="../../commands/">see</a>. </p>
<p>The cluster will start without flannel and with Calico as CNI Plugin.</p>
<p>For watching for the pod(s) deployment</p>
<divclass="highlight"><pre><span></span><code>watch<spanclass="w"></span><spanclass="s2">"kubectl get pods -n kube-system"</span><spanclass="w"></span>
<divclass="highlight"><pre><span></span><code>watch<spanclass="s2">"kubectl get pods -n kube-system"</span>
</code></pre></div>
<p>You will have something like this at beginning (with the command line <codeclass="highlight">kubectl<spanclass="w"></span>get<spanclass="w"></span>pods<spanclass="w"></span>-n<spanclass="w"></span>kube-system</code>)</p>
<li>you can use the auto deploy manifest or a kubectl apply depending on your needs</li>
<li><imgalt="❗"class="twemoji"src="https://cdn.jsdelivr.net/gh/jdecked/twemoji@14.1.2/assets/svg/2757.svg"title=":exclamation:"/> Calico is not as quick as Flannel (but it provides more features)</li>
<li><imgalt="❗"class="twemoji"src="https://twemoji.maxcdn.com/v/latest/svg/2757.svg"title=":exclamation:"/> Calico is not as quick as Flannel (but it provides more features)</li>
<scriptid="__config"type="application/json">{"base":"../../..","features":["navigation.top","search.suggest","search.highlight","navigation.expand","navigation.tabs"],"search":"../../../assets/javascripts/workers/search.db81ec45.min.js","translations":{"clipboard.copied":"Copied to clipboard","clipboard.copy":"Copy to clipboard","search.result.more.one":"1 more on this page","search.result.more.other":"# more on this page","search.result.none":"No matching documents","search.result.one":"1 matching document","search.result.other":"# matching documents","search.result.placeholder":"Type to start searching","search.result.term.missing":"Missing","select.version":"Select version"},"version":{"provider":"mike"}}</script>
<scriptid="__config"type="application/json">{"base":"../../..","features":["navigation.top","search.suggest","search.highlight","navigation.expand","navigation.tabs"],"search":"../../../assets/javascripts/workers/search.b97dbffb.min.js","translations":{"clipboard.copied":"Copied to clipboard","clipboard.copy":"Copy to clipboard","search.config.lang":"en","search.config.pipeline":"trimmer, stopWordFilter","search.config.separator":"[\\s\\-]+","search.placeholder":"Search","search.result.more.one":"1 more on this page","search.result.more.other":"# more on this page","search.result.none":"No matching documents","search.result.one":"1 matching document","search.result.other":"# matching documents","search.result.placeholder":"Type to start searching","search.result.term.missing":"Missing","select.version.title":"Select version"},"version":{"provider":"mike"}}</script>
<inputclass="md-option"data-md-color-media="(prefers-color-scheme: light)"data-md-color-scheme="default"data-md-color-primary="black"data-md-color-accent="grey"aria-label="Switch to dark mode"type="radio"name="__palette"id="__palette_1">
<labelclass="md-header__button md-icon"title="Switch to dark mode"for="__palette_2"hidden>
@ -133,6 +129,7 @@
<inputclass="md-option"data-md-color-media="(prefers-color-scheme: dark)"data-md-color-scheme="slate"data-md-color-primary="light-blue"data-md-color-accent=""aria-label="Switch to light mode"type="radio"name="__palette"id="__palette_2">
<labelclass="md-header__button md-icon"title="Switch to light mode"for="__palette_1"hidden>
<p>We need to configure containerd to use the NVIDIA Container Runtime. We need to customize the config.toml that is used at startup. K3s provides a way to do this using a <ahref="config.toml.tmpl">config.toml.tmpl</a> file. More information can be found on the <ahref="https://rancher.com/docs/k3s/latest/en/advanced/#configuring-containerd">K3s site</a>.</p>
<p>To enable NVIDIA GPU support on Kubernetes you also need to install the <ahref="https://github.com/NVIDIA/k8s-device-plugin">NVIDIA device plugin</a>. The device plugin is a deamonset and allows you to automatically:</p>
@ -1501,47 +1486,47 @@ The following changes are applied:</p>
<li>Keep track of the health of your GPUs</li>
<li>Run GPU enabled containers in your Kubernetes cluster.</li>
<spanclass="w"></span><spanclass="c1"># Allow this pod to be rescheduled while the node is in "critical add-ons only" mode.</span><spanclass="w"></span>
<spanclass="w"></span><spanclass="c1"># This, along with the annotation above marks this pod as a critical add-on.</span><spanclass="w"></span>
<spanclass="nv">K3S_TAG</span><spanclass="o">=</span><spanclass="si">${</span><spanclass="nv">K3S_TAG</span><spanclass="p">:=</span><spanclass="s2">"v1.21.2-k3s1"</span><spanclass="si">}</span><spanclass="w"></span><spanclass="c1"># replace + with -, if needed</span>
<spanclass="nv">K3S_TAG</span><spanclass="o">=</span><spanclass="si">${</span><spanclass="nv">K3S_TAG</span><spanclass="p">:=</span><spanclass="s2">"v1.21.2-k3s1"</span><spanclass="si">}</span><spanclass="c1"># replace + with -, if needed</span>
<h2id="run-and-test-the-custom-image-with-k3d">Run and test the custom image with k3d<aclass="headerlink"href="#run-and-test-the-custom-image-with-k3d"title="Permanent link">¶</a></h2>
<p>If the <code>cuda-vector-add</code> pod is stuck in <code>Pending</code> state, probably the device-driver daemonset didn’t get deployed correctly from the auto-deploy manifests. In that case, you can apply it manually via <codeclass="highlight">kubectl<spanclass="w"></span>apply<spanclass="w"></span>-f<spanclass="w"></span>device-plugin-daemonset.yaml</code>.</p>
<p>If the <code>cuda-vector-add</code> pod is stuck in <code>Pending</code> state, probably the device-driver daemonset didn’t get deployed correctly from the auto-deploy manifests. In that case, you can apply it manually via <codeclass="highlight">kubectlapply-fdevice-plugin-daemonset.yaml</code>.</p>
<li>This approach does not work on WSL2 yet. The NVIDIA driver plugin and container runtime rely on the NVIDIA Management Library (NVML) which is not yet supported. See the <ahref="https://docs.nvidia.com/cuda/wsl-user-guide/index.html#known-limitations">CUDA on WSL User Guide</a>.</li>
<scriptid="__config"type="application/json">{"base":"../../..","features":["navigation.top","search.suggest","search.highlight","navigation.expand","navigation.tabs"],"search":"../../../assets/javascripts/workers/search.db81ec45.min.js","translations":{"clipboard.copied":"Copied to clipboard","clipboard.copy":"Copy to clipboard","search.result.more.one":"1 more on this page","search.result.more.other":"# more on this page","search.result.none":"No matching documents","search.result.one":"1 matching document","search.result.other":"# matching documents","search.result.placeholder":"Type to start searching","search.result.term.missing":"Missing","select.version":"Select version"},"version":{"provider":"mike"}}</script>
<scriptid="__config"type="application/json">{"base":"../../..","features":["navigation.top","search.suggest","search.highlight","navigation.expand","navigation.tabs"],"search":"../../../assets/javascripts/workers/search.b97dbffb.min.js","translations":{"clipboard.copied":"Copied to clipboard","clipboard.copy":"Copy to clipboard","search.config.lang":"en","search.config.pipeline":"trimmer, stopWordFilter","search.config.separator":"[\\s\\-]+","search.placeholder":"Search","search.result.more.one":"1 more on this page","search.result.more.other":"# more on this page","search.result.none":"No matching documents","search.result.one":"1 matching document","search.result.other":"# matching documents","search.result.placeholder":"Type to start searching","search.result.term.missing":"Missing","select.version.title":"Select version"},"version":{"provider":"mike"}}</script>
<inputclass="md-option"data-md-color-media="(prefers-color-scheme: light)"data-md-color-scheme="default"data-md-color-primary="black"data-md-color-accent="grey"aria-label="Switch to dark mode"type="radio"name="__palette"id="__palette_1">
<labelclass="md-header__button md-icon"title="Switch to dark mode"for="__palette_2"hidden>
@ -133,6 +129,7 @@
<inputclass="md-option"data-md-color-media="(prefers-color-scheme: dark)"data-md-color-scheme="slate"data-md-color-primary="light-blue"data-md-color-accent=""aria-label="Switch to light mode"type="radio"name="__palette"id="__palette_2">
<labelclass="md-header__button md-icon"title="Switch to light mode"for="__palette_1"hidden>
<p>k3d is not guaranteed to work with Podman. If you find a bug, do help by <ahref="https://github.com/k3d-io/k3d/issues/new?labels=bug&template=bug_report.md&title=%5BBUG%5D+Podman">filing an issue</a></p>
<h2id="creating-local-registries">Creating local registries<aclass="headerlink"href="#creating-local-registries"title="Permanent link">¶</a></h2>
<p>Because Podman does not have a default “bridge” network, you have to specify a network using the <code>--default-network</code> flag when creating a local registry:</p>
<scriptid="__config"type="application/json">{"base":"../../..","features":["navigation.top","search.suggest","search.highlight","navigation.expand","navigation.tabs"],"search":"../../../assets/javascripts/workers/search.db81ec45.min.js","translations":{"clipboard.copied":"Copied to clipboard","clipboard.copy":"Copy to clipboard","search.result.more.one":"1 more on this page","search.result.more.other":"# more on this page","search.result.none":"No matching documents","search.result.one":"1 matching document","search.result.other":"# matching documents","search.result.placeholder":"Type to start searching","search.result.term.missing":"Missing","select.version":"Select version"},"version":{"provider":"mike"}}</script>
<scriptid="__config"type="application/json">{"base":"../../..","features":["navigation.top","search.suggest","search.highlight","navigation.expand","navigation.tabs"],"search":"../../../assets/javascripts/workers/search.b97dbffb.min.js","translations":{"clipboard.copied":"Copied to clipboard","clipboard.copy":"Copy to clipboard","search.config.lang":"en","search.config.pipeline":"trimmer, stopWordFilter","search.config.separator":"[\\s\\-]+","search.placeholder":"Search","search.result.more.one":"1 more on this page","search.result.more.other":"# more on this page","search.result.none":"No matching documents","search.result.one":"1 matching document","search.result.other":"# matching documents","search.result.placeholder":"Type to start searching","search.result.term.missing":"Missing","select.version.title":"Select version"},"version":{"provider":"mike"}}</script>
<inputclass="md-option"data-md-color-media="(prefers-color-scheme: light)"data-md-color-scheme="default"data-md-color-primary="black"data-md-color-accent="grey"aria-label="Switch to dark mode"type="radio"name="__palette"id="__palette_1">
<labelclass="md-header__button md-icon"title="Switch to dark mode"for="__palette_2"hidden>
@ -133,6 +129,7 @@
<inputclass="md-option"data-md-color-media="(prefers-color-scheme: dark)"data-md-color-scheme="slate"data-md-color-primary="light-blue"data-md-color-accent=""aria-label="Switch to light mode"type="radio"name="__palette"id="__palette_2">
<labelclass="md-header__button md-icon"title="Switch to light mode"for="__palette_1"hidden>
<spanclass="w"></span>--trace<spanclass="w"></span><spanclass="c1"># GLOBAL: enable super verbose logging (trace logging) (default: false)</span>
<spanclass="w"></span>--version<spanclass="w"></span><spanclass="c1"># show k3d and k3s version</span>
<spanclass="w"></span>-h,<spanclass="w"></span>--help<spanclass="w"></span><spanclass="c1"># GLOBAL: show help text</span>
<spanclass="w"></span>cluster<spanclass="w"></span><spanclass="o">[</span>CLUSTERNAME<spanclass="o">]</span><spanclass="w"></span><spanclass="c1"># default cluster name is 'k3s-default'</span>
<spanclass="w"></span>create
<spanclass="w"></span>-a,<spanclass="w"></span>--agents<spanclass="w"></span><spanclass="c1"># specify how many agent nodes you want to create (integer, default: 0)</span>
<spanclass="w"></span>--agents-memory<spanclass="w"></span><spanclass="c1"># specify memory limit for agent containers/nodes (unit, e.g. 1g)</span>
<spanclass="w"></span>--api-port<spanclass="w"></span><spanclass="c1"># specify the port on which the cluster will be accessible (format '[HOST:]HOSTPORT', default: random)</span>
<spanclass="w"></span>-c,<spanclass="w"></span>--config<spanclass="w"></span><spanclass="c1"># use a config file (format 'PATH')</span>
<spanclass="w"></span>-e,<spanclass="w"></span>--env<spanclass="w"></span><spanclass="c1"># add environment variables to the nodes (quoted string, format: 'KEY[=VALUE][@NODEFILTER[;NODEFILTER...]]', use flag multiple times)</span>
<spanclass="w"></span>--gpus<spanclass="w"></span><spanclass="c1"># [from docker CLI] add GPU devices to the node containers (string, e.g. 'all')</span>
<spanclass="w"></span>-i,<spanclass="w"></span>--image<spanclass="w"></span><spanclass="c1"># specify which k3s image should be used for the nodes (string, default: 'docker.io/rancher/k3s:v1.20.0-k3s2', tag changes per build)</span>
<spanclass="w"></span>--k3s-arg<spanclass="w"></span><spanclass="c1"># add additional arguments to the k3s server/agent (quoted string, use flag multiple times) (see https://rancher.com/docs/k3s/latest/en/installation/install-options/server-config/#k3s-server-cli-help & https://rancher.com/docs/k3s/latest/en/installation/install-options/agent-config/#k3s-agent-cli-help)</span>
<spanclass="w"></span>--kubeconfig-switch-context<spanclass="w"></span><spanclass="c1"># (implies --kubeconfig-update-default) automatically sets the current-context of your default kubeconfig to the new cluster's context (default: true)</span>
<spanclass="w"></span>--kubeconfig-update-default<spanclass="w"></span><spanclass="c1"># enable the automated update of the default kubeconfig with the details of the newly created cluster (also sets '--wait=true') (default: true)</span>
<spanclass="w"></span>-l,<spanclass="w"></span>--label<spanclass="w"></span><spanclass="c1"># add (docker) labels to the node containers (format: 'KEY[=VALUE][@NODEFILTER[;NODEFILTER...]]', use flag multiple times)</span>
<spanclass="w"></span>--network<spanclass="w"></span><spanclass="c1"># specify an existing (docker) network you want to connect to (string)</span>
<spanclass="w"></span>--no-hostip<spanclass="w"></span><spanclass="c1"># disable the automatic injection of the Host IP as 'host.k3d.internal' into the containers and CoreDNS (default: false)</span>
<spanclass="w"></span>--no-image-volume<spanclass="w"></span><spanclass="c1"># disable the creation of a volume for storing images (used for the 'k3d image import' command) (default: false)</span>
<spanclass="w"></span>--no-lb<spanclass="w"></span><spanclass="c1"># disable the creation of a load balancer in front of the server nodes (default: false)</span>
<spanclass="w"></span>--no-rollback<spanclass="w"></span><spanclass="c1"># disable the automatic rollback actions, if anything goes wrong (default: false)</span>
<spanclass="w"></span>-p,<spanclass="w"></span>--port<spanclass="w"></span><spanclass="c1"># add some more port mappings (format: '[HOST:][HOSTPORT:]CONTAINERPORT[/PROTOCOL][@NODEFILTER]', use flag multiple times)</span>
<spanclass="w"></span>--registry-create<spanclass="w"></span><spanclass="c1"># create a new (docker) registry dedicated for this cluster (default: false)</span>
<spanclass="w"></span>--registry-use<spanclass="w"></span><spanclass="c1"># use an existing local (docker) registry with this cluster (string, use multiple times)</span>
<spanclass="w"></span>-s,<spanclass="w"></span>--servers<spanclass="w"></span><spanclass="c1"># specify how many server nodes you want to create (integer, default: 1)</span>
<spanclass="w"></span>--servers-memory<spanclass="w"></span><spanclass="c1"># specify memory limit for server containers/nodes (unit, e.g. 1g)</span>
<spanclass="w"></span>--token<spanclass="w"></span><spanclass="c1"># specify a cluster token (string, default: auto-generated)</span>
<spanclass="w"></span>--timeout<spanclass="w"></span><spanclass="c1"># specify a timeout, after which the cluster creation will be interrupted and changes rolled back (duration, e.g. '10s')</span>
<spanclass="w"></span>-v,<spanclass="w"></span>--volume<spanclass="w"></span><spanclass="c1"># specify additional bind-mounts (format: '[SOURCE:]DEST[@NODEFILTER[;NODEFILTER...]]', use flag multiple times)</span>
<spanclass="w"></span>--wait<spanclass="w"></span><spanclass="c1"># enable waiting for all server nodes to be ready before returning (default: true)</span>
<spanclass="w"></span>start<spanclass="w"></span>CLUSTERNAME<spanclass="w"></span><spanclass="c1"># start a (stopped) cluster</span>
<spanclass="w"></span>-a,<spanclass="w"></span>--all<spanclass="w"></span><spanclass="c1"># start all clusters (default: false)</span>
<spanclass="w"></span>--wait<spanclass="w"></span><spanclass="c1"># wait for all servers and server-loadbalancer to be up before returning (default: true)</span>
<spanclass="w"></span>--timeout<spanclass="w"></span><spanclass="c1"># maximum waiting time for '--wait' before canceling/returning (duration, e.g. '10s')</span>
<spanclass="w"></span>stop<spanclass="w"></span>CLUSTERNAME<spanclass="w"></span><spanclass="c1"># stop a cluster</span>
<spanclass="w"></span>-a,<spanclass="w"></span>--all<spanclass="w"></span><spanclass="c1"># stop all clusters (default: false)</span>
<spanclass="w"></span>delete<spanclass="w"></span>CLUSTERNAME<spanclass="w"></span><spanclass="c1"># delete an existing cluster</span>
<spanclass="w"></span>-a,<spanclass="w"></span>--all<spanclass="w"></span><spanclass="c1"># delete all existing clusters (default: false)</span>
<spanclass="w"></span>--no-headers<spanclass="w"></span><spanclass="c1"># do not print headers (default: false)</span>
<spanclass="w"></span>--token<spanclass="w"></span><spanclass="c1"># show column with cluster tokens (default: false)</span>
<spanclass="w"></span>-o,<spanclass="w"></span>--output<spanclass="w"></span><spanclass="c1"># format the output (format: 'json|yaml')</span>
<spanclass="w"></span>completion<spanclass="w"></span><spanclass="o">[</span>bash<spanclass="w"></span><spanclass="p">|</span><spanclass="w"></span>zsh<spanclass="w"></span><spanclass="p">|</span><spanclass="w"></span>fish<spanclass="w"></span><spanclass="p">|</span><spanclass="w"></span><spanclass="o">(</span>psh<spanclass="w"></span><spanclass="p">|</span><spanclass="w"></span>powershell<spanclass="o">)]</span><spanclass="w"></span><spanclass="c1"># generate completion scripts for common shells</span>
<spanclass="w"></span>config
<spanclass="w"></span>init<spanclass="w"></span><spanclass="c1"># write a default k3d config (as a starting point)</span>
<spanclass="w"></span>-f,<spanclass="w"></span>--force<spanclass="w"></span><spanclass="c1"># force overwrite target file (default: false)</span>
<spanclass="w"></span>-o,<spanclass="w"></span>--output<spanclass="w"></span><spanclass="c1"># file to write to (string, default "k3d-default.yaml")</span>
<spanclass="w"></span><spanclass="nb">help</span><spanclass="w"></span><spanclass="o">[</span>COMMAND<spanclass="o">]</span><spanclass="w"></span><spanclass="c1"># show help text for any command</span>
<spanclass="w"></span>image
<spanclass="w"></span>import<spanclass="w"></span><spanclass="o">[</span>IMAGE<spanclass="w"></span><spanclass="p">|</span><spanclass="w"></span>ARCHIVE<spanclass="w"></span><spanclass="o">[</span>IMAGE<spanclass="w"></span><spanclass="p">|</span><spanclass="w"></span>ARCHIVE<spanclass="w"></span>...<spanclass="o">]]</span><spanclass="w"></span><spanclass="c1"># Load one or more images from the local runtime environment or tar-archives into k3d clusters</span>
<spanclass="w"></span>-c,<spanclass="w"></span>--cluster<spanclass="w"></span><spanclass="c1"># clusters to load the image into (string, use flag multiple times, default: k3s-default)</span>
<spanclass="w"></span>-k,<spanclass="w"></span>--keep-tarball<spanclass="w"></span><spanclass="c1"># do not delete the image tarball from the shared volume after completion (default: false)</span>
<spanclass="w"></span>kubeconfig
<spanclass="w"></span>get<spanclass="w"></span><spanclass="o">(</span>CLUSTERNAME<spanclass="w"></span><spanclass="o">[</span>CLUSTERNAME<spanclass="w"></span>...<spanclass="o">]</span><spanclass="w"></span><spanclass="p">|</span><spanclass="w"></span>--all<spanclass="o">)</span><spanclass="w"></span><spanclass="c1"># get kubeconfig from cluster(s) and write it to stdout</span>
<spanclass="w"></span>-a,<spanclass="w"></span>--all<spanclass="w"></span><spanclass="c1"># get kubeconfigs from all clusters (default: false)</span>
<spanclass="w"></span>merge<spanclass="w"></span><spanclass="p">|</span><spanclass="w"></span>write<spanclass="w"></span><spanclass="o">(</span>CLUSTERNAME<spanclass="w"></span><spanclass="o">[</span>CLUSTERNAME<spanclass="w"></span>...<spanclass="o">]</span><spanclass="w"></span><spanclass="p">|</span><spanclass="w"></span>--all<spanclass="o">)</span><spanclass="w"></span><spanclass="c1"># get kubeconfig from cluster(s) and merge it/them into a (kubeconfig-)file</span>
<spanclass="w"></span>-a,<spanclass="w"></span>--all<spanclass="w"></span><spanclass="c1"># get kubeconfigs from all clusters (default: false)</span>
<spanclass="w"></span>-s,<spanclass="w"></span>--kubeconfig-switch-context<spanclass="w"></span><spanclass="c1"># switch current-context in kubeconfig to the new context (default: true)</span>
<spanclass="w"></span>-d,<spanclass="w"></span>--kubeconfig-merge-default<spanclass="w"></span><spanclass="c1"># update the default kubeconfig (usually $KUBECONFIG or $HOME/.kube/config)</span>
<spanclass="w"></span>-o,<spanclass="w"></span>--output<spanclass="w"></span><spanclass="c1"># specify the output file where the kubeconfig should be written to (string)</span>
<spanclass="w"></span>-u,<spanclass="w"></span>--update<spanclass="w"></span><spanclass="c1"># update conflicting fields in existing kubeconfig (default: true)</span>
<spanclass="w"></span>node
<spanclass="w"></span>create<spanclass="w"></span>NODENAME<spanclass="w"></span><spanclass="c1"># Create new nodes (and add them to existing clusters)</span>
<spanclass="w"></span>-c,<spanclass="w"></span>--cluster<spanclass="w"></span><spanclass="c1"># specify the cluster that the node shall connect to (string, default: k3s-default)</span>
<spanclass="w"></span>-i,<spanclass="w"></span>--image<spanclass="w"></span><spanclass="c1"># specify which k3s image should be used for the node(s) (string, default: 'docker.io/rancher/k3s:v1.20.0-k3s2', tag changes per build)</span>
<spanclass="w"></span>--replicas<spanclass="w"></span><spanclass="c1"># specify how many replicas you want to create with this spec (integer, default: 1)</span>
<spanclass="w"></span>--role<spanclass="w"></span><spanclass="c1"># specify the node role (string, format: 'agent|server', default: agent)</span>
<spanclass="w"></span>--timeout<spanclass="w"></span><spanclass="c1"># specify a timeout duration, after which the node creation will be interrupted, if not done yet (duration, e.g. '10s')</span>
<spanclass="w"></span>--wait<spanclass="w"></span><spanclass="c1"># wait for the node to be up and running before returning (default: true)</span>
<spanclass="w"></span>start<spanclass="w"></span>NODENAME<spanclass="w"></span><spanclass="c1"># start a (stopped) node</span>
<spanclass="w"></span>stop<spanclass="w"></span>NODENAME<spanclass="w"></span><spanclass="c1"># stop a node</span>
<spanclass="w"></span>delete<spanclass="w"></span>NODENAME<spanclass="w"></span><spanclass="c1"># delete an existing node</span>
<spanclass="w"></span>-a,<spanclass="w"></span>--all<spanclass="w"></span><spanclass="c1"># delete all existing nodes (default: false)</span>
<spanclass="w"></span>-r,<spanclass="w"></span>--registries<spanclass="w"></span><spanclass="c1"># also delete registries, as a special type of node (default: false)</span>
<spanclass="w"></span>-i,<spanclass="w"></span>--image<spanclass="w"></span><spanclass="c1"># specify image used for the registry (string, default: "docker.io/library/registry:2")</span>
<spanclass="w"></span>-p,<spanclass="w"></span>--port<spanclass="w"></span><spanclass="c1"># select host port to map to (format: '[HOST:]HOSTPORT', default: 'random')</span>
--version <spanclass="c1"># show k3d and k3s version</span>
-h,--help<spanclass="c1"># GLOBAL: show help text</span>
cluster<spanclass="o">[</span>CLUSTERNAME<spanclass="o">]</span><spanclass="c1"># default cluster name is 'k3s-default'</span>
create
-a,--agents<spanclass="c1"># specify how many agent nodes you want to create (integer, default: 0)</span>
--agents-memory<spanclass="c1"># specify memory limit for agent containers/nodes (unit, e.g. 1g)</span>
--api-port <spanclass="c1"># specify the port on which the cluster will be accessible (format '[HOST:]HOSTPORT', default: random)</span>
-c,--config<spanclass="c1"># use a config file (format 'PATH')</span>
-e,--env<spanclass="c1"># add environment variables to the nodes (quoted string, format: 'KEY[=VALUE][@NODEFILTER[;NODEFILTER...]]', use flag multiple times)</span>
--gpus <spanclass="c1"># [from docker CLI] add GPU devices to the node containers (string, e.g. 'all')</span>
-i,--image<spanclass="c1"># specify which k3s image should be used for the nodes (string, default: 'docker.io/rancher/k3s:v1.20.0-k3s2', tag changes per build)</span>
--k3s-arg <spanclass="c1"># add additional arguments to the k3s server/agent (quoted string, use flag multiple times) (see https://rancher.com/docs/k3s/latest/en/installation/install-options/server-config/#k3s-server-cli-help & https://rancher.com/docs/k3s/latest/en/installation/install-options/agent-config/#k3s-agent-cli-help)</span>
--kubeconfig-switch-context <spanclass="c1"># (implies --kubeconfig-update-default) automatically sets the current-context of your default kubeconfig to the new cluster's context (default: true)</span>
--kubeconfig-update-default <spanclass="c1"># enable the automated update of the default kubeconfig with the details of the newly created cluster (also sets '--wait=true') (default: true)</span>
-l,--label<spanclass="c1"># add (docker) labels to the node containers (format: 'KEY[=VALUE][@NODEFILTER[;NODEFILTER...]]', use flag multiple times)</span>
--network <spanclass="c1"># specify an existing (docker) network you want to connect to (string)</span>
--no-hostip <spanclass="c1"># disable the automatic injection of the Host IP as 'host.k3d.internal' into the containers and CoreDNS (default: false)</span>
--no-image-volume <spanclass="c1"># disable the creation of a volume for storing images (used for the 'k3d image import' command) (default: false)</span>
--no-lb <spanclass="c1"># disable the creation of a load balancer in front of the server nodes (default: false)</span>
--no-rollback <spanclass="c1"># disable the automatic rollback actions, if anything goes wrong (default: false)</span>
-p,--port<spanclass="c1"># add some more port mappings (format: '[HOST:][HOSTPORT:]CONTAINERPORT[/PROTOCOL][@NODEFILTER]', use flag multiple times)</span>
--registry-create <spanclass="c1"># create a new (docker) registry dedicated for this cluster (default: false)</span>
--registry-use <spanclass="c1"># use an existing local (docker) registry with this cluster (string, use multiple times)</span>
-s,--servers<spanclass="c1"># specify how many server nodes you want to create (integer, default: 1)</span>
--servers-memory<spanclass="c1"># specify memory limit for server containers/nodes (unit, e.g. 1g)</span>
--token <spanclass="c1"># specify a cluster token (string, default: auto-generated)</span>
--timeout <spanclass="c1"># specify a timeout, after which the cluster creation will be interrupted and changes rolled back (duration, e.g. '10s')</span>
-v,--volume<spanclass="c1"># specify additional bind-mounts (format: '[SOURCE:]DEST[@NODEFILTER[;NODEFILTER...]]', use flag multiple times)</span>
--wait <spanclass="c1"># enable waiting for all server nodes to be ready before returning (default: true)</span>
startCLUSTERNAME<spanclass="c1"># start a (stopped) cluster</span>
-a,--all<spanclass="c1"># start all clusters (default: false)</span>
--wait <spanclass="c1"># wait for all servers and server-loadbalancer to be up before returning (default: true)</span>
--timeout <spanclass="c1"># maximum waiting time for '--wait' before canceling/returning (duration, e.g. '10s')</span>
stopCLUSTERNAME<spanclass="c1"># stop a cluster</span>
-a,--all<spanclass="c1"># stop all clusters (default: false)</span>
deleteCLUSTERNAME<spanclass="c1"># delete an existing cluster</span>
-a,--all<spanclass="c1"># delete all existing clusters (default: false)</span>
--no-headers <spanclass="c1"># do not print headers (default: false)</span>
--token <spanclass="c1"># show column with cluster tokens (default: false)</span>
-o,--output<spanclass="c1"># format the output (format: 'json|yaml')</span>
completion<spanclass="o">[</span>bash<spanclass="p">|</span>zsh<spanclass="p">|</span>fish<spanclass="p">|</span><spanclass="o">(</span>psh<spanclass="p">|</span>powershell<spanclass="o">)]</span><spanclass="c1"># generate completion scripts for common shells</span>
config
init <spanclass="c1"># write a default k3d config (as a starting point)</span>
-f,--force<spanclass="c1"># force overwrite target file (default: false)</span>
-o,--output<spanclass="c1"># file to write to (string, default "k3d-default.yaml")</span>
<spanclass="nb">help</span><spanclass="o">[</span>COMMAND<spanclass="o">]</span><spanclass="c1"># show help text for any command</span>
image
import<spanclass="o">[</span>IMAGE<spanclass="p">|</span>ARCHIVE<spanclass="o">[</span>IMAGE<spanclass="p">|</span>ARCHIVE...<spanclass="o">]]</span><spanclass="c1"># Load one or more images from the local runtime environment or tar-archives into k3d clusters</span>
-c,--cluster<spanclass="c1"># clusters to load the image into (string, use flag multiple times, default: k3s-default)</span>
-k,--keep-tarball<spanclass="c1"># do not delete the image tarball from the shared volume after completion (default: false)</span>
kubeconfig
get<spanclass="o">(</span>CLUSTERNAME<spanclass="o">[</span>CLUSTERNAME...<spanclass="o">]</span><spanclass="p">|</span>--all<spanclass="o">)</span><spanclass="c1"># get kubeconfig from cluster(s) and write it to stdout</span>
-a,--all<spanclass="c1"># get kubeconfigs from all clusters (default: false)</span>
merge<spanclass="p">|</span>write<spanclass="o">(</span>CLUSTERNAME<spanclass="o">[</span>CLUSTERNAME...<spanclass="o">]</span><spanclass="p">|</span>--all<spanclass="o">)</span><spanclass="c1"># get kubeconfig from cluster(s) and merge it/them into a (kubeconfig-)file</span>
-a,--all<spanclass="c1"># get kubeconfigs from all clusters (default: false)</span>
-s,--kubeconfig-switch-context<spanclass="c1"># switch current-context in kubeconfig to the new context (default: true)</span>
-d,--kubeconfig-merge-default<spanclass="c1"># update the default kubeconfig (usually $KUBECONFIG or $HOME/.kube/config)</span>
-o,--output<spanclass="c1"># specify the output file where the kubeconfig should be written to (string)</span>
-u,--update<spanclass="c1"># update conflicting fields in existing kubeconfig (default: true)</span>
node
createNODENAME<spanclass="c1"># Create new nodes (and add them to existing clusters)</span>
-c,--cluster<spanclass="c1"># specify the cluster that the node shall connect to (string, default: k3s-default)</span>
-i,--image<spanclass="c1"># specify which k3s image should be used for the node(s) (string, default: 'docker.io/rancher/k3s:v1.20.0-k3s2', tag changes per build)</span>
--replicas <spanclass="c1"># specify how many replicas you want to create with this spec (integer, default: 1)</span>
--role <spanclass="c1"># specify the node role (string, format: 'agent|server', default: agent)</span>
--timeout<spanclass="c1"># specify a timeout duration, after which the node creation will be interrupted, if not done yet (duration, e.g. '10s')</span>
--wait <spanclass="c1"># wait for the node to be up and running before returning (default: true)</span>
startNODENAME<spanclass="c1"># start a (stopped) node</span>
stopNODENAME<spanclass="c1"># stop a node</span>
deleteNODENAME<spanclass="c1"># delete an existing node</span>
-a,--all<spanclass="c1"># delete all existing nodes (default: false)</span>
-r,--registries<spanclass="c1"># also delete registries, as a special type of node (default: false)</span>
listNODENAME
--no-headers <spanclass="c1"># do not print headers (default: false)</span>
registry
createREGISTRYNAME
-i,--image<spanclass="c1"># specify image used for the registry (string, default: "docker.io/library/registry:2")</span>
-p,--port<spanclass="c1"># select host port to map to (format: '[HOST:]HOSTPORT', default: 'random')</span>
deleteREGISTRYNAME
-a,--all<spanclass="c1"># delete all existing registries (default: false)</span>
<scriptid="__config"type="application/json">{"base":"../..","features":["navigation.top","search.suggest","search.highlight","navigation.expand","navigation.tabs"],"search":"../../assets/javascripts/workers/search.db81ec45.min.js","translations":{"clipboard.copied":"Copied to clipboard","clipboard.copy":"Copy to clipboard","search.result.more.one":"1 more on this page","search.result.more.other":"# more on this page","search.result.none":"No matching documents","search.result.one":"1 matching document","search.result.other":"# matching documents","search.result.placeholder":"Type to start searching","search.result.term.missing":"Missing","select.version":"Select version"},"version":{"provider":"mike"}}</script>
<scriptid="__config"type="application/json">{"base":"../..","features":["navigation.top","search.suggest","search.highlight","navigation.expand","navigation.tabs"],"search":"../../assets/javascripts/workers/search.b97dbffb.min.js","translations":{"clipboard.copied":"Copied to clipboard","clipboard.copy":"Copy to clipboard","search.config.lang":"en","search.config.pipeline":"trimmer, stopWordFilter","search.config.separator":"[\\s\\-]+","search.placeholder":"Search","search.result.more.one":"1 more on this page","search.result.more.other":"# more on this page","search.result.none":"No matching documents","search.result.one":"1 matching document","search.result.other":"# matching documents","search.result.placeholder":"Type to start searching","search.result.term.missing":"Missing","select.version.title":"Select version"},"version":{"provider":"mike"}}</script>
<inputclass="md-option"data-md-color-media="(prefers-color-scheme: light)"data-md-color-scheme="default"data-md-color-primary="black"data-md-color-accent="grey"aria-label="Switch to dark mode"type="radio"name="__palette"id="__palette_1">
<labelclass="md-header__button md-icon"title="Switch to dark mode"for="__palette_2"hidden>
@ -133,6 +129,7 @@
<inputclass="md-option"data-md-color-media="(prefers-color-scheme: dark)"data-md-color-scheme="slate"data-md-color-primary="light-blue"data-md-color-accent=""aria-label="Switch to light mode"type="radio"name="__palette"id="__palette_2">
<labelclass="md-header__button md-icon"title="Switch to light mode"for="__palette_1"hidden>
@ -1379,11 +1395,10 @@ All Nodes of a k3d cluster are part of the same docker network.</p>
<divclass="md-dialog"data-md-component="dialog">
<divclass="md-dialog__inner md-typeset"></div>
</div>
<scriptid="__config"type="application/json">{"base":"../../..","features":["navigation.top","search.suggest","search.highlight","navigation.expand","navigation.tabs"],"search":"../../../assets/javascripts/workers/search.db81ec45.min.js","translations":{"clipboard.copied":"Copied to clipboard","clipboard.copy":"Copy to clipboard","search.result.more.one":"1 more on this page","search.result.more.other":"# more on this page","search.result.none":"No matching documents","search.result.one":"1 matching document","search.result.other":"# matching documents","search.result.placeholder":"Type to start searching","search.result.term.missing":"Missing","select.version":"Select version"},"version":{"provider":"mike"}}</script>
<scriptid="__config"type="application/json">{"base":"../../..","features":["navigation.top","search.suggest","search.highlight","navigation.expand","navigation.tabs"],"search":"../../../assets/javascripts/workers/search.b97dbffb.min.js","translations":{"clipboard.copied":"Copied to clipboard","clipboard.copy":"Copy to clipboard","search.config.lang":"en","search.config.pipeline":"trimmer, stopWordFilter","search.config.separator":"[\\s\\-]+","search.placeholder":"Search","search.result.more.one":"1 more on this page","search.result.more.other":"# more on this page","search.result.none":"No matching documents","search.result.one":"1 matching document","search.result.other":"# matching documents","search.result.placeholder":"Type to start searching","search.result.term.missing":"Missing","select.version.title":"Select version"},"version":{"provider":"mike"}}</script>
<inputclass="md-option"data-md-color-media="(prefers-color-scheme: light)"data-md-color-scheme="default"data-md-color-primary="black"data-md-color-accent="grey"aria-label="Switch to dark mode"type="radio"name="__palette"id="__palette_1">
<labelclass="md-header__button md-icon"title="Switch to dark mode"for="__palette_2"hidden>
@ -133,6 +129,7 @@
<inputclass="md-option"data-md-color-media="(prefers-color-scheme: dark)"data-md-color-scheme="slate"data-md-color-primary="light-blue"data-md-color-accent=""aria-label="Switch to light mode"type="radio"name="__palette"id="__palette_2">
<labelclass="md-header__button md-icon"title="Switch to light mode"for="__palette_1"hidden>
<scriptid="__config"type="application/json">{"base":"../../..","features":["navigation.top","search.suggest","search.highlight","navigation.expand","navigation.tabs"],"search":"../../../assets/javascripts/workers/search.db81ec45.min.js","translations":{"clipboard.copied":"Copied to clipboard","clipboard.copy":"Copy to clipboard","search.result.more.one":"1 more on this page","search.result.more.other":"# more on this page","search.result.none":"No matching documents","search.result.one":"1 matching document","search.result.other":"# matching documents","search.result.placeholder":"Type to start searching","search.result.term.missing":"Missing","select.version":"Select version"},"version":{"provider":"mike"}}</script>
<scriptid="__config"type="application/json">{"base":"../../..","features":["navigation.top","search.suggest","search.highlight","navigation.expand","navigation.tabs"],"search":"../../../assets/javascripts/workers/search.b97dbffb.min.js","translations":{"clipboard.copied":"Copied to clipboard","clipboard.copy":"Copy to clipboard","search.config.lang":"en","search.config.pipeline":"trimmer, stopWordFilter","search.config.separator":"[\\s\\-]+","search.placeholder":"Search","search.result.more.one":"1 more on this page","search.result.more.other":"# more on this page","search.result.none":"No matching documents","search.result.one":"1 matching document","search.result.other":"# matching documents","search.result.placeholder":"Type to start searching","search.result.term.missing":"Missing","select.version.title":"Select version"},"version":{"provider":"mike"}}</script>
<inputclass="md-option"data-md-color-media="(prefers-color-scheme: light)"data-md-color-scheme="default"data-md-color-primary="black"data-md-color-accent="grey"aria-label="Switch to dark mode"type="radio"name="__palette"id="__palette_1">
<labelclass="md-header__button md-icon"title="Switch to dark mode"for="__palette_2"hidden>
@ -133,6 +129,7 @@
<inputclass="md-option"data-md-color-media="(prefers-color-scheme: dark)"data-md-color-scheme="slate"data-md-color-primary="light-blue"data-md-color-accent=""aria-label="Switch to light mode"type="radio"name="__palette"id="__palette_2">
<labelclass="md-header__button md-icon"title="Switch to light mode"for="__palette_1"hidden>
@ -1428,11 +1444,10 @@ Every cluster will consist of one or more containers:
<divclass="md-dialog"data-md-component="dialog">
<divclass="md-dialog__inner md-typeset"></div>
</div>
<scriptid="__config"type="application/json">{"base":"../../..","features":["navigation.top","search.suggest","search.highlight","navigation.expand","navigation.tabs"],"search":"../../../assets/javascripts/workers/search.db81ec45.min.js","translations":{"clipboard.copied":"Copied to clipboard","clipboard.copy":"Copy to clipboard","search.result.more.one":"1 more on this page","search.result.more.other":"# more on this page","search.result.none":"No matching documents","search.result.one":"1 matching document","search.result.other":"# matching documents","search.result.placeholder":"Type to start searching","search.result.term.missing":"Missing","select.version":"Select version"},"version":{"provider":"mike"}}</script>
<scriptid="__config"type="application/json">{"base":"../../..","features":["navigation.top","search.suggest","search.highlight","navigation.expand","navigation.tabs"],"search":"../../../assets/javascripts/workers/search.b97dbffb.min.js","translations":{"clipboard.copied":"Copied to clipboard","clipboard.copy":"Copy to clipboard","search.config.lang":"en","search.config.pipeline":"trimmer, stopWordFilter","search.config.separator":"[\\s\\-]+","search.placeholder":"Search","search.result.more.one":"1 more on this page","search.result.more.other":"# more on this page","search.result.none":"No matching documents","search.result.one":"1 matching document","search.result.other":"# matching documents","search.result.placeholder":"Type to start searching","search.result.term.missing":"Missing","select.version.title":"Select version"},"version":{"provider":"mike"}}</script>
<inputclass="md-option"data-md-color-media="(prefers-color-scheme: light)"data-md-color-scheme="default"data-md-color-primary="black"data-md-color-accent="grey"aria-label="Switch to dark mode"type="radio"name="__palette"id="__palette_1">
<labelclass="md-header__button md-icon"title="Switch to dark mode"for="__palette_2"hidden>
@ -133,6 +129,7 @@
<inputclass="md-option"data-md-color-media="(prefers-color-scheme: dark)"data-md-color-scheme="slate"data-md-color-primary="light-blue"data-md-color-accent=""aria-label="Switch to light mode"type="radio"name="__palette"id="__palette_2">
<labelclass="md-header__button md-icon"title="Switch to light mode"for="__palette_1"hidden>
<scriptid="__config"type="application/json">{"base":"../../..","features":["navigation.top","search.suggest","search.highlight","navigation.expand","navigation.tabs"],"search":"../../../assets/javascripts/workers/search.db81ec45.min.js","translations":{"clipboard.copied":"Copied to clipboard","clipboard.copy":"Copy to clipboard","search.result.more.one":"1 more on this page","search.result.more.other":"# more on this page","search.result.none":"No matching documents","search.result.one":"1 matching document","search.result.other":"# matching documents","search.result.placeholder":"Type to start searching","search.result.term.missing":"Missing","select.version":"Select version"},"version":{"provider":"mike"}}</script>
<scriptid="__config"type="application/json">{"base":"../../..","features":["navigation.top","search.suggest","search.highlight","navigation.expand","navigation.tabs"],"search":"../../../assets/javascripts/workers/search.b97dbffb.min.js","translations":{"clipboard.copied":"Copied to clipboard","clipboard.copy":"Copy to clipboard","search.config.lang":"en","search.config.pipeline":"trimmer, stopWordFilter","search.config.separator":"[\\s\\-]+","search.placeholder":"Search","search.result.more.one":"1 more on this page","search.result.more.other":"# more on this page","search.result.none":"No matching documents","search.result.one":"1 matching document","search.result.other":"# matching documents","search.result.placeholder":"Type to start searching","search.result.term.missing":"Missing","select.version.title":"Select version"},"version":{"provider":"mike"}}</script>
<inputclass="md-option"data-md-color-media="(prefers-color-scheme: light)"data-md-color-scheme="default"data-md-color-primary="black"data-md-color-accent="grey"aria-label="Switch to dark mode"type="radio"name="__palette"id="__palette_1">
<labelclass="md-header__button md-icon"title="Switch to dark mode"for="__palette_2"hidden>
@ -133,6 +129,7 @@
<inputclass="md-option"data-md-color-media="(prefers-color-scheme: dark)"data-md-color-scheme="slate"data-md-color-primary="light-blue"data-md-color-accent=""aria-label="Switch to light mode"type="radio"name="__palette"id="__palette_2">
<labelclass="md-header__button md-icon"title="Switch to light mode"for="__palette_1"hidden>
<scriptid="__config"type="application/json">{"base":"../../..","features":["navigation.top","search.suggest","search.highlight","navigation.expand","navigation.tabs"],"search":"../../../assets/javascripts/workers/search.db81ec45.min.js","translations":{"clipboard.copied":"Copied to clipboard","clipboard.copy":"Copy to clipboard","search.result.more.one":"1 more on this page","search.result.more.other":"# more on this page","search.result.none":"No matching documents","search.result.one":"1 matching document","search.result.other":"# matching documents","search.result.placeholder":"Type to start searching","search.result.term.missing":"Missing","select.version":"Select version"},"version":{"provider":"mike"}}</script>
<scriptid="__config"type="application/json">{"base":"../../..","features":["navigation.top","search.suggest","search.highlight","navigation.expand","navigation.tabs"],"search":"../../../assets/javascripts/workers/search.b97dbffb.min.js","translations":{"clipboard.copied":"Copied to clipboard","clipboard.copy":"Copy to clipboard","search.config.lang":"en","search.config.pipeline":"trimmer, stopWordFilter","search.config.separator":"[\\s\\-]+","search.placeholder":"Search","search.result.more.one":"1 more on this page","search.result.more.other":"# more on this page","search.result.none":"No matching documents","search.result.one":"1 matching document","search.result.other":"# matching documents","search.result.placeholder":"Type to start searching","search.result.term.missing":"Missing","select.version.title":"Select version"},"version":{"provider":"mike"}}</script>
<inputclass="md-option"data-md-color-media="(prefers-color-scheme: light)"data-md-color-scheme="default"data-md-color-primary="black"data-md-color-accent="grey"aria-label="Switch to dark mode"type="radio"name="__palette"id="__palette_1">
<labelclass="md-header__button md-icon"title="Switch to dark mode"for="__palette_2"hidden>
@ -133,6 +129,7 @@
<inputclass="md-option"data-md-color-media="(prefers-color-scheme: dark)"data-md-color-scheme="slate"data-md-color-primary="light-blue"data-md-color-accent=""aria-label="Switch to light mode"type="radio"name="__palette"id="__palette_2">
<labelclass="md-header__button md-icon"title="Switch to light mode"for="__palette_1"hidden>
<scriptid="__config"type="application/json">{"base":"../../..","features":["navigation.top","search.suggest","search.highlight","navigation.expand","navigation.tabs"],"search":"../../../assets/javascripts/workers/search.db81ec45.min.js","translations":{"clipboard.copied":"Copied to clipboard","clipboard.copy":"Copy to clipboard","search.result.more.one":"1 more on this page","search.result.more.other":"# more on this page","search.result.none":"No matching documents","search.result.one":"1 matching document","search.result.other":"# matching documents","search.result.placeholder":"Type to start searching","search.result.term.missing":"Missing","select.version":"Select version"},"version":{"provider":"mike"}}</script>
<scriptid="__config"type="application/json">{"base":"../../..","features":["navigation.top","search.suggest","search.highlight","navigation.expand","navigation.tabs"],"search":"../../../assets/javascripts/workers/search.b97dbffb.min.js","translations":{"clipboard.copied":"Copied to clipboard","clipboard.copy":"Copy to clipboard","search.config.lang":"en","search.config.pipeline":"trimmer, stopWordFilter","search.config.separator":"[\\s\\-]+","search.placeholder":"Search","search.result.more.one":"1 more on this page","search.result.more.other":"# more on this page","search.result.none":"No matching documents","search.result.one":"1 matching document","search.result.other":"# matching documents","search.result.placeholder":"Type to start searching","search.result.term.missing":"Missing","select.version.title":"Select version"},"version":{"provider":"mike"}}</script>
<inputclass="md-option"data-md-color-media="(prefers-color-scheme: light)"data-md-color-scheme="default"data-md-color-primary="black"data-md-color-accent="grey"aria-label="Switch to dark mode"type="radio"name="__palette"id="__palette_1">
<labelclass="md-header__button md-icon"title="Switch to dark mode"for="__palette_2"hidden>
@ -133,6 +129,7 @@
<inputclass="md-option"data-md-color-media="(prefers-color-scheme: dark)"data-md-color-scheme="slate"data-md-color-primary="light-blue"data-md-color-accent=""aria-label="Switch to light mode"type="radio"name="__palette"id="__palette_2">
<labelclass="md-header__button md-icon"title="Switch to light mode"for="__palette_1"hidden>
<scriptid="__config"type="application/json">{"base":"../../..","features":["navigation.top","search.suggest","search.highlight","navigation.expand","navigation.tabs"],"search":"../../../assets/javascripts/workers/search.db81ec45.min.js","translations":{"clipboard.copied":"Copied to clipboard","clipboard.copy":"Copy to clipboard","search.result.more.one":"1 more on this page","search.result.more.other":"# more on this page","search.result.none":"No matching documents","search.result.one":"1 matching document","search.result.other":"# matching documents","search.result.placeholder":"Type to start searching","search.result.term.missing":"Missing","select.version":"Select version"},"version":{"provider":"mike"}}</script>
<scriptid="__config"type="application/json">{"base":"../../..","features":["navigation.top","search.suggest","search.highlight","navigation.expand","navigation.tabs"],"search":"../../../assets/javascripts/workers/search.b97dbffb.min.js","translations":{"clipboard.copied":"Copied to clipboard","clipboard.copy":"Copy to clipboard","search.config.lang":"en","search.config.pipeline":"trimmer, stopWordFilter","search.config.separator":"[\\s\\-]+","search.placeholder":"Search","search.result.more.one":"1 more on this page","search.result.more.other":"# more on this page","search.result.none":"No matching documents","search.result.one":"1 matching document","search.result.other":"# matching documents","search.result.placeholder":"Type to start searching","search.result.term.missing":"Missing","select.version.title":"Select version"},"version":{"provider":"mike"}}</script>
<inputclass="md-option"data-md-color-media="(prefers-color-scheme: light)"data-md-color-scheme="default"data-md-color-primary="black"data-md-color-accent="grey"aria-label="Switch to dark mode"type="radio"name="__palette"id="__palette_1">
<labelclass="md-header__button md-icon"title="Switch to dark mode"for="__palette_2"hidden>
@ -133,6 +129,7 @@
<inputclass="md-option"data-md-color-media="(prefers-color-scheme: dark)"data-md-color-scheme="slate"data-md-color-primary="light-blue"data-md-color-accent=""aria-label="Switch to light mode"type="radio"name="__palette"id="__palette_2">
<labelclass="md-header__button md-icon"title="Switch to light mode"for="__palette_1"hidden>
<scriptid="__config"type="application/json">{"base":"../../..","features":["navigation.top","search.suggest","search.highlight","navigation.expand","navigation.tabs"],"search":"../../../assets/javascripts/workers/search.db81ec45.min.js","translations":{"clipboard.copied":"Copied to clipboard","clipboard.copy":"Copy to clipboard","search.result.more.one":"1 more on this page","search.result.more.other":"# more on this page","search.result.none":"No matching documents","search.result.one":"1 matching document","search.result.other":"# matching documents","search.result.placeholder":"Type to start searching","search.result.term.missing":"Missing","select.version":"Select version"},"version":{"provider":"mike"}}</script>
<scriptid="__config"type="application/json">{"base":"../../..","features":["navigation.top","search.suggest","search.highlight","navigation.expand","navigation.tabs"],"search":"../../../assets/javascripts/workers/search.b97dbffb.min.js","translations":{"clipboard.copied":"Copied to clipboard","clipboard.copy":"Copy to clipboard","search.config.lang":"en","search.config.pipeline":"trimmer, stopWordFilter","search.config.separator":"[\\s\\-]+","search.placeholder":"Search","search.result.more.one":"1 more on this page","search.result.more.other":"# more on this page","search.result.none":"No matching documents","search.result.one":"1 matching document","search.result.other":"# matching documents","search.result.placeholder":"Type to start searching","search.result.term.missing":"Missing","select.version.title":"Select version"},"version":{"provider":"mike"}}</script>
<inputclass="md-option"data-md-color-media="(prefers-color-scheme: light)"data-md-color-scheme="default"data-md-color-primary="black"data-md-color-accent="grey"aria-label="Switch to dark mode"type="radio"name="__palette"id="__palette_1">
<labelclass="md-header__button md-icon"title="Switch to dark mode"for="__palette_2"hidden>
@ -133,6 +129,7 @@
<inputclass="md-option"data-md-color-media="(prefers-color-scheme: dark)"data-md-color-scheme="slate"data-md-color-primary="light-blue"data-md-color-accent=""aria-label="Switch to light mode"type="radio"name="__palette"id="__palette_2">
<labelclass="md-header__button md-icon"title="Switch to light mode"for="__palette_1"hidden>
<scriptid="__config"type="application/json">{"base":"../../..","features":["navigation.top","search.suggest","search.highlight","navigation.expand","navigation.tabs"],"search":"../../../assets/javascripts/workers/search.db81ec45.min.js","translations":{"clipboard.copied":"Copied to clipboard","clipboard.copy":"Copy to clipboard","search.result.more.one":"1 more on this page","search.result.more.other":"# more on this page","search.result.none":"No matching documents","search.result.one":"1 matching document","search.result.other":"# matching documents","search.result.placeholder":"Type to start searching","search.result.term.missing":"Missing","select.version":"Select version"},"version":{"provider":"mike"}}</script>
<scriptid="__config"type="application/json">{"base":"../../..","features":["navigation.top","search.suggest","search.highlight","navigation.expand","navigation.tabs"],"search":"../../../assets/javascripts/workers/search.b97dbffb.min.js","translations":{"clipboard.copied":"Copied to clipboard","clipboard.copy":"Copy to clipboard","search.config.lang":"en","search.config.pipeline":"trimmer, stopWordFilter","search.config.separator":"[\\s\\-]+","search.placeholder":"Search","search.result.more.one":"1 more on this page","search.result.more.other":"# more on this page","search.result.none":"No matching documents","search.result.one":"1 matching document","search.result.other":"# matching documents","search.result.placeholder":"Type to start searching","search.result.term.missing":"Missing","select.version.title":"Select version"},"version":{"provider":"mike"}}</script>
<inputclass="md-option"data-md-color-media="(prefers-color-scheme: light)"data-md-color-scheme="default"data-md-color-primary="black"data-md-color-accent="grey"aria-label="Switch to dark mode"type="radio"name="__palette"id="__palette_1">
<labelclass="md-header__button md-icon"title="Switch to dark mode"for="__palette_2"hidden>
@ -133,6 +129,7 @@
<inputclass="md-option"data-md-color-media="(prefers-color-scheme: dark)"data-md-color-scheme="slate"data-md-color-primary="light-blue"data-md-color-accent=""aria-label="Switch to light mode"type="radio"name="__palette"id="__palette_2">
<labelclass="md-header__button md-icon"title="Switch to light mode"for="__palette_1"hidden>
<scriptid="__config"type="application/json">{"base":"../../..","features":["navigation.top","search.suggest","search.highlight","navigation.expand","navigation.tabs"],"search":"../../../assets/javascripts/workers/search.db81ec45.min.js","translations":{"clipboard.copied":"Copied to clipboard","clipboard.copy":"Copy to clipboard","search.result.more.one":"1 more on this page","search.result.more.other":"# more on this page","search.result.none":"No matching documents","search.result.one":"1 matching document","search.result.other":"# matching documents","search.result.placeholder":"Type to start searching","search.result.term.missing":"Missing","select.version":"Select version"},"version":{"provider":"mike"}}</script>
<scriptid="__config"type="application/json">{"base":"../../..","features":["navigation.top","search.suggest","search.highlight","navigation.expand","navigation.tabs"],"search":"../../../assets/javascripts/workers/search.b97dbffb.min.js","translations":{"clipboard.copied":"Copied to clipboard","clipboard.copy":"Copy to clipboard","search.config.lang":"en","search.config.pipeline":"trimmer, stopWordFilter","search.config.separator":"[\\s\\-]+","search.placeholder":"Search","search.result.more.one":"1 more on this page","search.result.more.other":"# more on this page","search.result.none":"No matching documents","search.result.one":"1 matching document","search.result.other":"# matching documents","search.result.placeholder":"Type to start searching","search.result.term.missing":"Missing","select.version.title":"Select version"},"version":{"provider":"mike"}}</script>
<inputclass="md-option"data-md-color-media="(prefers-color-scheme: light)"data-md-color-scheme="default"data-md-color-primary="black"data-md-color-accent="grey"aria-label="Switch to dark mode"type="radio"name="__palette"id="__palette_1">
<labelclass="md-header__button md-icon"title="Switch to dark mode"for="__palette_2"hidden>
@ -133,6 +129,7 @@
<inputclass="md-option"data-md-color-media="(prefers-color-scheme: dark)"data-md-color-scheme="slate"data-md-color-primary="light-blue"data-md-color-accent=""aria-label="Switch to light mode"type="radio"name="__palette"id="__palette_2">
<labelclass="md-header__button md-icon"title="Switch to light mode"for="__palette_1"hidden>
<scriptid="__config"type="application/json">{"base":"../../..","features":["navigation.top","search.suggest","search.highlight","navigation.expand","navigation.tabs"],"search":"../../../assets/javascripts/workers/search.db81ec45.min.js","translations":{"clipboard.copied":"Copied to clipboard","clipboard.copy":"Copy to clipboard","search.result.more.one":"1 more on this page","search.result.more.other":"# more on this page","search.result.none":"No matching documents","search.result.one":"1 matching document","search.result.other":"# matching documents","search.result.placeholder":"Type to start searching","search.result.term.missing":"Missing","select.version":"Select version"},"version":{"provider":"mike"}}</script>
<scriptid="__config"type="application/json">{"base":"../../..","features":["navigation.top","search.suggest","search.highlight","navigation.expand","navigation.tabs"],"search":"../../../assets/javascripts/workers/search.b97dbffb.min.js","translations":{"clipboard.copied":"Copied to clipboard","clipboard.copy":"Copy to clipboard","search.config.lang":"en","search.config.pipeline":"trimmer, stopWordFilter","search.config.separator":"[\\s\\-]+","search.placeholder":"Search","search.result.more.one":"1 more on this page","search.result.more.other":"# more on this page","search.result.none":"No matching documents","search.result.one":"1 matching document","search.result.other":"# matching documents","search.result.placeholder":"Type to start searching","search.result.term.missing":"Missing","select.version.title":"Select version"},"version":{"provider":"mike"}}</script>
<inputclass="md-option"data-md-color-media="(prefers-color-scheme: light)"data-md-color-scheme="default"data-md-color-primary="black"data-md-color-accent="grey"aria-label="Switch to dark mode"type="radio"name="__palette"id="__palette_1">
<labelclass="md-header__button md-icon"title="Switch to dark mode"for="__palette_2"hidden>
@ -133,6 +129,7 @@
<inputclass="md-option"data-md-color-media="(prefers-color-scheme: dark)"data-md-color-scheme="slate"data-md-color-primary="light-blue"data-md-color-accent=""aria-label="Switch to light mode"type="radio"name="__palette"id="__palette_2">
<labelclass="md-header__button md-icon"title="Switch to light mode"for="__palette_1"hidden>
<scriptid="__config"type="application/json">{"base":"../../..","features":["navigation.top","search.suggest","search.highlight","navigation.expand","navigation.tabs"],"search":"../../../assets/javascripts/workers/search.db81ec45.min.js","translations":{"clipboard.copied":"Copied to clipboard","clipboard.copy":"Copy to clipboard","search.result.more.one":"1 more on this page","search.result.more.other":"# more on this page","search.result.none":"No matching documents","search.result.one":"1 matching document","search.result.other":"# matching documents","search.result.placeholder":"Type to start searching","search.result.term.missing":"Missing","select.version":"Select version"},"version":{"provider":"mike"}}</script>
<scriptid="__config"type="application/json">{"base":"../../..","features":["navigation.top","search.suggest","search.highlight","navigation.expand","navigation.tabs"],"search":"../../../assets/javascripts/workers/search.b97dbffb.min.js","translations":{"clipboard.copied":"Copied to clipboard","clipboard.copy":"Copy to clipboard","search.config.lang":"en","search.config.pipeline":"trimmer, stopWordFilter","search.config.separator":"[\\s\\-]+","search.placeholder":"Search","search.result.more.one":"1 more on this page","search.result.more.other":"# more on this page","search.result.none":"No matching documents","search.result.one":"1 matching document","search.result.other":"# matching documents","search.result.placeholder":"Type to start searching","search.result.term.missing":"Missing","select.version.title":"Select version"},"version":{"provider":"mike"}}</script>
<inputclass="md-option"data-md-color-media="(prefers-color-scheme: light)"data-md-color-scheme="default"data-md-color-primary="black"data-md-color-accent="grey"aria-label="Switch to dark mode"type="radio"name="__palette"id="__palette_1">
<labelclass="md-header__button md-icon"title="Switch to dark mode"for="__palette_2"hidden>
@ -133,6 +129,7 @@
<inputclass="md-option"data-md-color-media="(prefers-color-scheme: dark)"data-md-color-scheme="slate"data-md-color-primary="light-blue"data-md-color-accent=""aria-label="Switch to light mode"type="radio"name="__palette"id="__palette_2">
<labelclass="md-header__button md-icon"title="Switch to light mode"for="__palette_1"hidden>
<scriptid="__config"type="application/json">{"base":"../../..","features":["navigation.top","search.suggest","search.highlight","navigation.expand","navigation.tabs"],"search":"../../../assets/javascripts/workers/search.db81ec45.min.js","translations":{"clipboard.copied":"Copied to clipboard","clipboard.copy":"Copy to clipboard","search.result.more.one":"1 more on this page","search.result.more.other":"# more on this page","search.result.none":"No matching documents","search.result.one":"1 matching document","search.result.other":"# matching documents","search.result.placeholder":"Type to start searching","search.result.term.missing":"Missing","select.version":"Select version"},"version":{"provider":"mike"}}</script>
<scriptid="__config"type="application/json">{"base":"../../..","features":["navigation.top","search.suggest","search.highlight","navigation.expand","navigation.tabs"],"search":"../../../assets/javascripts/workers/search.b97dbffb.min.js","translations":{"clipboard.copied":"Copied to clipboard","clipboard.copy":"Copy to clipboard","search.config.lang":"en","search.config.pipeline":"trimmer, stopWordFilter","search.config.separator":"[\\s\\-]+","search.placeholder":"Search","search.result.more.one":"1 more on this page","search.result.more.other":"# more on this page","search.result.none":"No matching documents","search.result.one":"1 matching document","search.result.other":"# matching documents","search.result.placeholder":"Type to start searching","search.result.term.missing":"Missing","select.version.title":"Select version"},"version":{"provider":"mike"}}</script>
<inputclass="md-option"data-md-color-media="(prefers-color-scheme: light)"data-md-color-scheme="default"data-md-color-primary="black"data-md-color-accent="grey"aria-label="Switch to dark mode"type="radio"name="__palette"id="__palette_1">
<labelclass="md-header__button md-icon"title="Switch to dark mode"for="__palette_2"hidden>
@ -133,6 +129,7 @@
<inputclass="md-option"data-md-color-media="(prefers-color-scheme: dark)"data-md-color-scheme="slate"data-md-color-primary="light-blue"data-md-color-accent=""aria-label="Switch to light mode"type="radio"name="__palette"id="__palette_2">
<labelclass="md-header__button md-icon"title="Switch to light mode"for="__palette_1"hidden>
@ -1396,11 +1412,10 @@ So if a file ‘./k3d-io/k3d-tools’ exists, k3d will try to import it
<divclass="md-dialog"data-md-component="dialog">
<divclass="md-dialog__inner md-typeset"></div>
</div>
<scriptid="__config"type="application/json">{"base":"../../..","features":["navigation.top","search.suggest","search.highlight","navigation.expand","navigation.tabs"],"search":"../../../assets/javascripts/workers/search.db81ec45.min.js","translations":{"clipboard.copied":"Copied to clipboard","clipboard.copy":"Copy to clipboard","search.result.more.one":"1 more on this page","search.result.more.other":"# more on this page","search.result.none":"No matching documents","search.result.one":"1 matching document","search.result.other":"# matching documents","search.result.placeholder":"Type to start searching","search.result.term.missing":"Missing","select.version":"Select version"},"version":{"provider":"mike"}}</script>
<scriptid="__config"type="application/json">{"base":"../../..","features":["navigation.top","search.suggest","search.highlight","navigation.expand","navigation.tabs"],"search":"../../../assets/javascripts/workers/search.b97dbffb.min.js","translations":{"clipboard.copied":"Copied to clipboard","clipboard.copy":"Copy to clipboard","search.config.lang":"en","search.config.pipeline":"trimmer, stopWordFilter","search.config.separator":"[\\s\\-]+","search.placeholder":"Search","search.result.more.one":"1 more on this page","search.result.more.other":"# more on this page","search.result.none":"No matching documents","search.result.one":"1 matching document","search.result.other":"# matching documents","search.result.placeholder":"Type to start searching","search.result.term.missing":"Missing","select.version.title":"Select version"},"version":{"provider":"mike"}}</script>
<inputclass="md-option"data-md-color-media="(prefers-color-scheme: light)"data-md-color-scheme="default"data-md-color-primary="black"data-md-color-accent="grey"aria-label="Switch to dark mode"type="radio"name="__palette"id="__palette_1">
<labelclass="md-header__button md-icon"title="Switch to dark mode"for="__palette_2"hidden>
@ -133,6 +129,7 @@
<inputclass="md-option"data-md-color-media="(prefers-color-scheme: dark)"data-md-color-scheme="slate"data-md-color-primary="light-blue"data-md-color-accent=""aria-label="Switch to light mode"type="radio"name="__palette"id="__palette_2">
<labelclass="md-header__button md-icon"title="Switch to light mode"for="__palette_1"hidden>
<scriptid="__config"type="application/json">{"base":"../../..","features":["navigation.top","search.suggest","search.highlight","navigation.expand","navigation.tabs"],"search":"../../../assets/javascripts/workers/search.db81ec45.min.js","translations":{"clipboard.copied":"Copied to clipboard","clipboard.copy":"Copy to clipboard","search.result.more.one":"1 more on this page","search.result.more.other":"# more on this page","search.result.none":"No matching documents","search.result.one":"1 matching document","search.result.other":"# matching documents","search.result.placeholder":"Type to start searching","search.result.term.missing":"Missing","select.version":"Select version"},"version":{"provider":"mike"}}</script>
<scriptid="__config"type="application/json">{"base":"../../..","features":["navigation.top","search.suggest","search.highlight","navigation.expand","navigation.tabs"],"search":"../../../assets/javascripts/workers/search.b97dbffb.min.js","translations":{"clipboard.copied":"Copied to clipboard","clipboard.copy":"Copy to clipboard","search.config.lang":"en","search.config.pipeline":"trimmer, stopWordFilter","search.config.separator":"[\\s\\-]+","search.placeholder":"Search","search.result.more.one":"1 more on this page","search.result.more.other":"# more on this page","search.result.none":"No matching documents","search.result.one":"1 matching document","search.result.other":"# matching documents","search.result.placeholder":"Type to start searching","search.result.term.missing":"Missing","select.version.title":"Select version"},"version":{"provider":"mike"}}</script>
<inputclass="md-option"data-md-color-media="(prefers-color-scheme: light)"data-md-color-scheme="default"data-md-color-primary="black"data-md-color-accent="grey"aria-label="Switch to dark mode"type="radio"name="__palette"id="__palette_1">
<labelclass="md-header__button md-icon"title="Switch to dark mode"for="__palette_2"hidden>
@ -133,6 +129,7 @@
<inputclass="md-option"data-md-color-media="(prefers-color-scheme: dark)"data-md-color-scheme="slate"data-md-color-primary="light-blue"data-md-color-accent=""aria-label="Switch to light mode"type="radio"name="__palette"id="__palette_2">
<labelclass="md-header__button md-icon"title="Switch to light mode"for="__palette_1"hidden>
<scriptid="__config"type="application/json">{"base":"../../..","features":["navigation.top","search.suggest","search.highlight","navigation.expand","navigation.tabs"],"search":"../../../assets/javascripts/workers/search.db81ec45.min.js","translations":{"clipboard.copied":"Copied to clipboard","clipboard.copy":"Copy to clipboard","search.result.more.one":"1 more on this page","search.result.more.other":"# more on this page","search.result.none":"No matching documents","search.result.one":"1 matching document","search.result.other":"# matching documents","search.result.placeholder":"Type to start searching","search.result.term.missing":"Missing","select.version":"Select version"},"version":{"provider":"mike"}}</script>
<scriptid="__config"type="application/json">{"base":"../../..","features":["navigation.top","search.suggest","search.highlight","navigation.expand","navigation.tabs"],"search":"../../../assets/javascripts/workers/search.b97dbffb.min.js","translations":{"clipboard.copied":"Copied to clipboard","clipboard.copy":"Copy to clipboard","search.config.lang":"en","search.config.pipeline":"trimmer, stopWordFilter","search.config.separator":"[\\s\\-]+","search.placeholder":"Search","search.result.more.one":"1 more on this page","search.result.more.other":"# more on this page","search.result.none":"No matching documents","search.result.one":"1 matching document","search.result.other":"# matching documents","search.result.placeholder":"Type to start searching","search.result.term.missing":"Missing","select.version.title":"Select version"},"version":{"provider":"mike"}}</script>
<inputclass="md-option"data-md-color-media="(prefers-color-scheme: light)"data-md-color-scheme="default"data-md-color-primary="black"data-md-color-accent="grey"aria-label="Switch to dark mode"type="radio"name="__palette"id="__palette_1">
<labelclass="md-header__button md-icon"title="Switch to dark mode"for="__palette_2"hidden>
@ -133,6 +129,7 @@
<inputclass="md-option"data-md-color-media="(prefers-color-scheme: dark)"data-md-color-scheme="slate"data-md-color-primary="light-blue"data-md-color-accent=""aria-label="Switch to light mode"type="radio"name="__palette"id="__palette_2">
<labelclass="md-header__button md-icon"title="Switch to light mode"for="__palette_1"hidden>
<scriptid="__config"type="application/json">{"base":"../../..","features":["navigation.top","search.suggest","search.highlight","navigation.expand","navigation.tabs"],"search":"../../../assets/javascripts/workers/search.db81ec45.min.js","translations":{"clipboard.copied":"Copied to clipboard","clipboard.copy":"Copy to clipboard","search.result.more.one":"1 more on this page","search.result.more.other":"# more on this page","search.result.none":"No matching documents","search.result.one":"1 matching document","search.result.other":"# matching documents","search.result.placeholder":"Type to start searching","search.result.term.missing":"Missing","select.version":"Select version"},"version":{"provider":"mike"}}</script>
<scriptid="__config"type="application/json">{"base":"../../..","features":["navigation.top","search.suggest","search.highlight","navigation.expand","navigation.tabs"],"search":"../../../assets/javascripts/workers/search.b97dbffb.min.js","translations":{"clipboard.copied":"Copied to clipboard","clipboard.copy":"Copy to clipboard","search.config.lang":"en","search.config.pipeline":"trimmer, stopWordFilter","search.config.separator":"[\\s\\-]+","search.placeholder":"Search","search.result.more.one":"1 more on this page","search.result.more.other":"# more on this page","search.result.none":"No matching documents","search.result.one":"1 matching document","search.result.other":"# matching documents","search.result.placeholder":"Type to start searching","search.result.term.missing":"Missing","select.version.title":"Select version"},"version":{"provider":"mike"}}</script>
<inputclass="md-option"data-md-color-media="(prefers-color-scheme: light)"data-md-color-scheme="default"data-md-color-primary="black"data-md-color-accent="grey"aria-label="Switch to dark mode"type="radio"name="__palette"id="__palette_1">
<labelclass="md-header__button md-icon"title="Switch to dark mode"for="__palette_2"hidden>
@ -133,6 +129,7 @@
<inputclass="md-option"data-md-color-media="(prefers-color-scheme: dark)"data-md-color-scheme="slate"data-md-color-primary="light-blue"data-md-color-accent=""aria-label="Switch to light mode"type="radio"name="__palette"id="__palette_2">
<labelclass="md-header__button md-icon"title="Switch to light mode"for="__palette_1"hidden>
<scriptid="__config"type="application/json">{"base":"../../..","features":["navigation.top","search.suggest","search.highlight","navigation.expand","navigation.tabs"],"search":"../../../assets/javascripts/workers/search.db81ec45.min.js","translations":{"clipboard.copied":"Copied to clipboard","clipboard.copy":"Copy to clipboard","search.result.more.one":"1 more on this page","search.result.more.other":"# more on this page","search.result.none":"No matching documents","search.result.one":"1 matching document","search.result.other":"# matching documents","search.result.placeholder":"Type to start searching","search.result.term.missing":"Missing","select.version":"Select version"},"version":{"provider":"mike"}}</script>
<scriptid="__config"type="application/json">{"base":"../../..","features":["navigation.top","search.suggest","search.highlight","navigation.expand","navigation.tabs"],"search":"../../../assets/javascripts/workers/search.b97dbffb.min.js","translations":{"clipboard.copied":"Copied to clipboard","clipboard.copy":"Copy to clipboard","search.config.lang":"en","search.config.pipeline":"trimmer, stopWordFilter","search.config.separator":"[\\s\\-]+","search.placeholder":"Search","search.result.more.one":"1 more on this page","search.result.more.other":"# more on this page","search.result.none":"No matching documents","search.result.one":"1 matching document","search.result.other":"# matching documents","search.result.placeholder":"Type to start searching","search.result.term.missing":"Missing","select.version.title":"Select version"},"version":{"provider":"mike"}}</script>
<inputclass="md-option"data-md-color-media="(prefers-color-scheme: light)"data-md-color-scheme="default"data-md-color-primary="black"data-md-color-accent="grey"aria-label="Switch to dark mode"type="radio"name="__palette"id="__palette_1">
<labelclass="md-header__button md-icon"title="Switch to dark mode"for="__palette_2"hidden>
@ -133,6 +129,7 @@
<inputclass="md-option"data-md-color-media="(prefers-color-scheme: dark)"data-md-color-scheme="slate"data-md-color-primary="light-blue"data-md-color-accent=""aria-label="Switch to light mode"type="radio"name="__palette"id="__palette_2">
<labelclass="md-header__button md-icon"title="Switch to light mode"for="__palette_1"hidden>
<scriptid="__config"type="application/json">{"base":"../../..","features":["navigation.top","search.suggest","search.highlight","navigation.expand","navigation.tabs"],"search":"../../../assets/javascripts/workers/search.db81ec45.min.js","translations":{"clipboard.copied":"Copied to clipboard","clipboard.copy":"Copy to clipboard","search.result.more.one":"1 more on this page","search.result.more.other":"# more on this page","search.result.none":"No matching documents","search.result.one":"1 matching document","search.result.other":"# matching documents","search.result.placeholder":"Type to start searching","search.result.term.missing":"Missing","select.version":"Select version"},"version":{"provider":"mike"}}</script>
<scriptid="__config"type="application/json">{"base":"../../..","features":["navigation.top","search.suggest","search.highlight","navigation.expand","navigation.tabs"],"search":"../../../assets/javascripts/workers/search.b97dbffb.min.js","translations":{"clipboard.copied":"Copied to clipboard","clipboard.copy":"Copy to clipboard","search.config.lang":"en","search.config.pipeline":"trimmer, stopWordFilter","search.config.separator":"[\\s\\-]+","search.placeholder":"Search","search.result.more.one":"1 more on this page","search.result.more.other":"# more on this page","search.result.none":"No matching documents","search.result.one":"1 matching document","search.result.other":"# matching documents","search.result.placeholder":"Type to start searching","search.result.term.missing":"Missing","select.version.title":"Select version"},"version":{"provider":"mike"}}</script>
<inputclass="md-option"data-md-color-media="(prefers-color-scheme: light)"data-md-color-scheme="default"data-md-color-primary="black"data-md-color-accent="grey"aria-label="Switch to dark mode"type="radio"name="__palette"id="__palette_1">
<labelclass="md-header__button md-icon"title="Switch to dark mode"for="__palette_2"hidden>
@ -133,6 +129,7 @@
<inputclass="md-option"data-md-color-media="(prefers-color-scheme: dark)"data-md-color-scheme="slate"data-md-color-primary="light-blue"data-md-color-accent=""aria-label="Switch to light mode"type="radio"name="__palette"id="__palette_2">
<labelclass="md-header__button md-icon"title="Switch to light mode"for="__palette_1"hidden>
<scriptid="__config"type="application/json">{"base":"../../..","features":["navigation.top","search.suggest","search.highlight","navigation.expand","navigation.tabs"],"search":"../../../assets/javascripts/workers/search.db81ec45.min.js","translations":{"clipboard.copied":"Copied to clipboard","clipboard.copy":"Copy to clipboard","search.result.more.one":"1 more on this page","search.result.more.other":"# more on this page","search.result.none":"No matching documents","search.result.one":"1 matching document","search.result.other":"# matching documents","search.result.placeholder":"Type to start searching","search.result.term.missing":"Missing","select.version":"Select version"},"version":{"provider":"mike"}}</script>
<scriptid="__config"type="application/json">{"base":"../../..","features":["navigation.top","search.suggest","search.highlight","navigation.expand","navigation.tabs"],"search":"../../../assets/javascripts/workers/search.b97dbffb.min.js","translations":{"clipboard.copied":"Copied to clipboard","clipboard.copy":"Copy to clipboard","search.config.lang":"en","search.config.pipeline":"trimmer, stopWordFilter","search.config.separator":"[\\s\\-]+","search.placeholder":"Search","search.result.more.one":"1 more on this page","search.result.more.other":"# more on this page","search.result.none":"No matching documents","search.result.one":"1 matching document","search.result.other":"# matching documents","search.result.placeholder":"Type to start searching","search.result.term.missing":"Missing","select.version.title":"Select version"},"version":{"provider":"mike"}}</script>
<inputclass="md-option"data-md-color-media="(prefers-color-scheme: light)"data-md-color-scheme="default"data-md-color-primary="black"data-md-color-accent="grey"aria-label="Switch to dark mode"type="radio"name="__palette"id="__palette_1">
<labelclass="md-header__button md-icon"title="Switch to dark mode"for="__palette_2"hidden>
@ -133,6 +129,7 @@
<inputclass="md-option"data-md-color-media="(prefers-color-scheme: dark)"data-md-color-scheme="slate"data-md-color-primary="light-blue"data-md-color-accent=""aria-label="Switch to light mode"type="radio"name="__palette"id="__palette_2">
<labelclass="md-header__button md-icon"title="Switch to light mode"for="__palette_1"hidden>
<scriptid="__config"type="application/json">{"base":"../../..","features":["navigation.top","search.suggest","search.highlight","navigation.expand","navigation.tabs"],"search":"../../../assets/javascripts/workers/search.db81ec45.min.js","translations":{"clipboard.copied":"Copied to clipboard","clipboard.copy":"Copy to clipboard","search.result.more.one":"1 more on this page","search.result.more.other":"# more on this page","search.result.none":"No matching documents","search.result.one":"1 matching document","search.result.other":"# matching documents","search.result.placeholder":"Type to start searching","search.result.term.missing":"Missing","select.version":"Select version"},"version":{"provider":"mike"}}</script>
<scriptid="__config"type="application/json">{"base":"../../..","features":["navigation.top","search.suggest","search.highlight","navigation.expand","navigation.tabs"],"search":"../../../assets/javascripts/workers/search.b97dbffb.min.js","translations":{"clipboard.copied":"Copied to clipboard","clipboard.copy":"Copy to clipboard","search.config.lang":"en","search.config.pipeline":"trimmer, stopWordFilter","search.config.separator":"[\\s\\-]+","search.placeholder":"Search","search.result.more.one":"1 more on this page","search.result.more.other":"# more on this page","search.result.none":"No matching documents","search.result.one":"1 matching document","search.result.other":"# matching documents","search.result.placeholder":"Type to start searching","search.result.term.missing":"Missing","select.version.title":"Select version"},"version":{"provider":"mike"}}</script>
<inputclass="md-option"data-md-color-media="(prefers-color-scheme: light)"data-md-color-scheme="default"data-md-color-primary="black"data-md-color-accent="grey"aria-label="Switch to dark mode"type="radio"name="__palette"id="__palette_1">
<labelclass="md-header__button md-icon"title="Switch to dark mode"for="__palette_2"hidden>
@ -133,6 +129,7 @@
<inputclass="md-option"data-md-color-media="(prefers-color-scheme: dark)"data-md-color-scheme="slate"data-md-color-primary="light-blue"data-md-color-accent=""aria-label="Switch to light mode"type="radio"name="__palette"id="__palette_2">
<labelclass="md-header__button md-icon"title="Switch to light mode"for="__palette_1"hidden>
<scriptid="__config"type="application/json">{"base":"../../..","features":["navigation.top","search.suggest","search.highlight","navigation.expand","navigation.tabs"],"search":"../../../assets/javascripts/workers/search.db81ec45.min.js","translations":{"clipboard.copied":"Copied to clipboard","clipboard.copy":"Copy to clipboard","search.result.more.one":"1 more on this page","search.result.more.other":"# more on this page","search.result.none":"No matching documents","search.result.one":"1 matching document","search.result.other":"# matching documents","search.result.placeholder":"Type to start searching","search.result.term.missing":"Missing","select.version":"Select version"},"version":{"provider":"mike"}}</script>
<scriptid="__config"type="application/json">{"base":"../../..","features":["navigation.top","search.suggest","search.highlight","navigation.expand","navigation.tabs"],"search":"../../../assets/javascripts/workers/search.b97dbffb.min.js","translations":{"clipboard.copied":"Copied to clipboard","clipboard.copy":"Copy to clipboard","search.config.lang":"en","search.config.pipeline":"trimmer, stopWordFilter","search.config.separator":"[\\s\\-]+","search.placeholder":"Search","search.result.more.one":"1 more on this page","search.result.more.other":"# more on this page","search.result.none":"No matching documents","search.result.one":"1 matching document","search.result.other":"# matching documents","search.result.placeholder":"Type to start searching","search.result.term.missing":"Missing","select.version.title":"Select version"},"version":{"provider":"mike"}}</script>
<inputclass="md-option"data-md-color-media="(prefers-color-scheme: light)"data-md-color-scheme="default"data-md-color-primary="black"data-md-color-accent="grey"aria-label="Switch to dark mode"type="radio"name="__palette"id="__palette_1">
<labelclass="md-header__button md-icon"title="Switch to dark mode"for="__palette_2"hidden>
@ -133,6 +129,7 @@
<inputclass="md-option"data-md-color-media="(prefers-color-scheme: dark)"data-md-color-scheme="slate"data-md-color-primary="light-blue"data-md-color-accent=""aria-label="Switch to light mode"type="radio"name="__palette"id="__palette_2">
<labelclass="md-header__button md-icon"title="Switch to light mode"for="__palette_1"hidden>
<scriptid="__config"type="application/json">{"base":"../../..","features":["navigation.top","search.suggest","search.highlight","navigation.expand","navigation.tabs"],"search":"../../../assets/javascripts/workers/search.db81ec45.min.js","translations":{"clipboard.copied":"Copied to clipboard","clipboard.copy":"Copy to clipboard","search.result.more.one":"1 more on this page","search.result.more.other":"# more on this page","search.result.none":"No matching documents","search.result.one":"1 matching document","search.result.other":"# matching documents","search.result.placeholder":"Type to start searching","search.result.term.missing":"Missing","select.version":"Select version"},"version":{"provider":"mike"}}</script>
<scriptid="__config"type="application/json">{"base":"../../..","features":["navigation.top","search.suggest","search.highlight","navigation.expand","navigation.tabs"],"search":"../../../assets/javascripts/workers/search.b97dbffb.min.js","translations":{"clipboard.copied":"Copied to clipboard","clipboard.copy":"Copy to clipboard","search.config.lang":"en","search.config.pipeline":"trimmer, stopWordFilter","search.config.separator":"[\\s\\-]+","search.placeholder":"Search","search.result.more.one":"1 more on this page","search.result.more.other":"# more on this page","search.result.none":"No matching documents","search.result.one":"1 matching document","search.result.other":"# matching documents","search.result.placeholder":"Type to start searching","search.result.term.missing":"Missing","select.version.title":"Select version"},"version":{"provider":"mike"}}</script>
<inputclass="md-option"data-md-color-media="(prefers-color-scheme: light)"data-md-color-scheme="default"data-md-color-primary="black"data-md-color-accent="grey"aria-label="Switch to dark mode"type="radio"name="__palette"id="__palette_1">
<labelclass="md-header__button md-icon"title="Switch to dark mode"for="__palette_2"hidden>
@ -133,6 +129,7 @@
<inputclass="md-option"data-md-color-media="(prefers-color-scheme: dark)"data-md-color-scheme="slate"data-md-color-primary="light-blue"data-md-color-accent=""aria-label="Switch to light mode"type="radio"name="__palette"id="__palette_2">
<labelclass="md-header__button md-icon"title="Switch to light mode"for="__palette_1"hidden>
<scriptid="__config"type="application/json">{"base":"../../..","features":["navigation.top","search.suggest","search.highlight","navigation.expand","navigation.tabs"],"search":"../../../assets/javascripts/workers/search.db81ec45.min.js","translations":{"clipboard.copied":"Copied to clipboard","clipboard.copy":"Copy to clipboard","search.result.more.one":"1 more on this page","search.result.more.other":"# more on this page","search.result.none":"No matching documents","search.result.one":"1 matching document","search.result.other":"# matching documents","search.result.placeholder":"Type to start searching","search.result.term.missing":"Missing","select.version":"Select version"},"version":{"provider":"mike"}}</script>
<scriptid="__config"type="application/json">{"base":"../../..","features":["navigation.top","search.suggest","search.highlight","navigation.expand","navigation.tabs"],"search":"../../../assets/javascripts/workers/search.b97dbffb.min.js","translations":{"clipboard.copied":"Copied to clipboard","clipboard.copy":"Copy to clipboard","search.config.lang":"en","search.config.pipeline":"trimmer, stopWordFilter","search.config.separator":"[\\s\\-]+","search.placeholder":"Search","search.result.more.one":"1 more on this page","search.result.more.other":"# more on this page","search.result.none":"No matching documents","search.result.one":"1 matching document","search.result.other":"# matching documents","search.result.placeholder":"Type to start searching","search.result.term.missing":"Missing","select.version.title":"Select version"},"version":{"provider":"mike"}}</script>
<inputclass="md-option"data-md-color-media="(prefers-color-scheme: light)"data-md-color-scheme="default"data-md-color-primary="black"data-md-color-accent="grey"aria-label="Switch to dark mode"type="radio"name="__palette"id="__palette_1">
<labelclass="md-header__button md-icon"title="Switch to dark mode"for="__palette_2"hidden>
@ -133,6 +129,7 @@
<inputclass="md-option"data-md-color-media="(prefers-color-scheme: dark)"data-md-color-scheme="slate"data-md-color-primary="light-blue"data-md-color-accent=""aria-label="Switch to light mode"type="radio"name="__palette"id="__palette_2">
<labelclass="md-header__button md-icon"title="Switch to light mode"for="__palette_1"hidden>
<scriptid="__config"type="application/json">{"base":"../../..","features":["navigation.top","search.suggest","search.highlight","navigation.expand","navigation.tabs"],"search":"../../../assets/javascripts/workers/search.db81ec45.min.js","translations":{"clipboard.copied":"Copied to clipboard","clipboard.copy":"Copy to clipboard","search.result.more.one":"1 more on this page","search.result.more.other":"# more on this page","search.result.none":"No matching documents","search.result.one":"1 matching document","search.result.other":"# matching documents","search.result.placeholder":"Type to start searching","search.result.term.missing":"Missing","select.version":"Select version"},"version":{"provider":"mike"}}</script>
<scriptid="__config"type="application/json">{"base":"../../..","features":["navigation.top","search.suggest","search.highlight","navigation.expand","navigation.tabs"],"search":"../../../assets/javascripts/workers/search.b97dbffb.min.js","translations":{"clipboard.copied":"Copied to clipboard","clipboard.copy":"Copy to clipboard","search.config.lang":"en","search.config.pipeline":"trimmer, stopWordFilter","search.config.separator":"[\\s\\-]+","search.placeholder":"Search","search.result.more.one":"1 more on this page","search.result.more.other":"# more on this page","search.result.none":"No matching documents","search.result.one":"1 matching document","search.result.other":"# matching documents","search.result.placeholder":"Type to start searching","search.result.term.missing":"Missing","select.version.title":"Select version"},"version":{"provider":"mike"}}</script>
<inputclass="md-option"data-md-color-media="(prefers-color-scheme: light)"data-md-color-scheme="default"data-md-color-primary="black"data-md-color-accent="grey"aria-label="Switch to dark mode"type="radio"name="__palette"id="__palette_1">
<labelclass="md-header__button md-icon"title="Switch to dark mode"for="__palette_2"hidden>
@ -133,6 +129,7 @@
<inputclass="md-option"data-md-color-media="(prefers-color-scheme: dark)"data-md-color-scheme="slate"data-md-color-primary="light-blue"data-md-color-accent=""aria-label="Switch to light mode"type="radio"name="__palette"id="__palette_2">
<labelclass="md-header__button md-icon"title="Switch to light mode"for="__palette_1"hidden>
<scriptid="__config"type="application/json">{"base":"../../..","features":["navigation.top","search.suggest","search.highlight","navigation.expand","navigation.tabs"],"search":"../../../assets/javascripts/workers/search.db81ec45.min.js","translations":{"clipboard.copied":"Copied to clipboard","clipboard.copy":"Copy to clipboard","search.result.more.one":"1 more on this page","search.result.more.other":"# more on this page","search.result.none":"No matching documents","search.result.one":"1 matching document","search.result.other":"# matching documents","search.result.placeholder":"Type to start searching","search.result.term.missing":"Missing","select.version":"Select version"},"version":{"provider":"mike"}}</script>
<scriptid="__config"type="application/json">{"base":"../../..","features":["navigation.top","search.suggest","search.highlight","navigation.expand","navigation.tabs"],"search":"../../../assets/javascripts/workers/search.b97dbffb.min.js","translations":{"clipboard.copied":"Copied to clipboard","clipboard.copy":"Copy to clipboard","search.config.lang":"en","search.config.pipeline":"trimmer, stopWordFilter","search.config.separator":"[\\s\\-]+","search.placeholder":"Search","search.result.more.one":"1 more on this page","search.result.more.other":"# more on this page","search.result.none":"No matching documents","search.result.one":"1 matching document","search.result.other":"# matching documents","search.result.placeholder":"Type to start searching","search.result.term.missing":"Missing","select.version.title":"Select version"},"version":{"provider":"mike"}}</script>
<inputclass="md-option"data-md-color-media="(prefers-color-scheme: light)"data-md-color-scheme="default"data-md-color-primary="black"data-md-color-accent="grey"aria-label="Switch to dark mode"type="radio"name="__palette"id="__palette_1">
<labelclass="md-header__button md-icon"title="Switch to dark mode"for="__palette_2"hidden>
@ -133,6 +129,7 @@
<inputclass="md-option"data-md-color-media="(prefers-color-scheme: dark)"data-md-color-scheme="slate"data-md-color-primary="light-blue"data-md-color-accent=""aria-label="Switch to light mode"type="radio"name="__palette"id="__palette_2">
<labelclass="md-header__button md-icon"title="Switch to light mode"for="__palette_1"hidden>
<scriptid="__config"type="application/json">{"base":"../../..","features":["navigation.top","search.suggest","search.highlight","navigation.expand","navigation.tabs"],"search":"../../../assets/javascripts/workers/search.db81ec45.min.js","translations":{"clipboard.copied":"Copied to clipboard","clipboard.copy":"Copy to clipboard","search.result.more.one":"1 more on this page","search.result.more.other":"# more on this page","search.result.none":"No matching documents","search.result.one":"1 matching document","search.result.other":"# matching documents","search.result.placeholder":"Type to start searching","search.result.term.missing":"Missing","select.version":"Select version"},"version":{"provider":"mike"}}</script>
<scriptid="__config"type="application/json">{"base":"../../..","features":["navigation.top","search.suggest","search.highlight","navigation.expand","navigation.tabs"],"search":"../../../assets/javascripts/workers/search.b97dbffb.min.js","translations":{"clipboard.copied":"Copied to clipboard","clipboard.copy":"Copy to clipboard","search.config.lang":"en","search.config.pipeline":"trimmer, stopWordFilter","search.config.separator":"[\\s\\-]+","search.placeholder":"Search","search.result.more.one":"1 more on this page","search.result.more.other":"# more on this page","search.result.none":"No matching documents","search.result.one":"1 matching document","search.result.other":"# matching documents","search.result.placeholder":"Type to start searching","search.result.term.missing":"Missing","select.version.title":"Select version"},"version":{"provider":"mike"}}</script>
<inputclass="md-option"data-md-color-media="(prefers-color-scheme: light)"data-md-color-scheme="default"data-md-color-primary="black"data-md-color-accent="grey"aria-label="Switch to dark mode"type="radio"name="__palette"id="__palette_1">
<labelclass="md-header__button md-icon"title="Switch to dark mode"for="__palette_2"hidden>
@ -133,6 +129,7 @@
<inputclass="md-option"data-md-color-media="(prefers-color-scheme: dark)"data-md-color-scheme="slate"data-md-color-primary="light-blue"data-md-color-accent=""aria-label="Switch to light mode"type="radio"name="__palette"id="__palette_2">
<labelclass="md-header__button md-icon"title="Switch to light mode"for="__palette_1"hidden>
<scriptid="__config"type="application/json">{"base":"../../..","features":["navigation.top","search.suggest","search.highlight","navigation.expand","navigation.tabs"],"search":"../../../assets/javascripts/workers/search.db81ec45.min.js","translations":{"clipboard.copied":"Copied to clipboard","clipboard.copy":"Copy to clipboard","search.result.more.one":"1 more on this page","search.result.more.other":"# more on this page","search.result.none":"No matching documents","search.result.one":"1 matching document","search.result.other":"# matching documents","search.result.placeholder":"Type to start searching","search.result.term.missing":"Missing","select.version":"Select version"},"version":{"provider":"mike"}}</script>
<scriptid="__config"type="application/json">{"base":"../../..","features":["navigation.top","search.suggest","search.highlight","navigation.expand","navigation.tabs"],"search":"../../../assets/javascripts/workers/search.b97dbffb.min.js","translations":{"clipboard.copied":"Copied to clipboard","clipboard.copy":"Copy to clipboard","search.config.lang":"en","search.config.pipeline":"trimmer, stopWordFilter","search.config.separator":"[\\s\\-]+","search.placeholder":"Search","search.result.more.one":"1 more on this page","search.result.more.other":"# more on this page","search.result.none":"No matching documents","search.result.one":"1 matching document","search.result.other":"# matching documents","search.result.placeholder":"Type to start searching","search.result.term.missing":"Missing","select.version.title":"Select version"},"version":{"provider":"mike"}}</script>
<inputclass="md-option"data-md-color-media="(prefers-color-scheme: light)"data-md-color-scheme="default"data-md-color-primary="black"data-md-color-accent="grey"aria-label="Switch to dark mode"type="radio"name="__palette"id="__palette_1">
<labelclass="md-header__button md-icon"title="Switch to dark mode"for="__palette_2"hidden>
@ -133,6 +129,7 @@
<inputclass="md-option"data-md-color-media="(prefers-color-scheme: dark)"data-md-color-scheme="slate"data-md-color-primary="light-blue"data-md-color-accent=""aria-label="Switch to light mode"type="radio"name="__palette"id="__palette_2">
<labelclass="md-header__button md-icon"title="Switch to light mode"for="__palette_1"hidden>
<scriptid="__config"type="application/json">{"base":"../../..","features":["navigation.top","search.suggest","search.highlight","navigation.expand","navigation.tabs"],"search":"../../../assets/javascripts/workers/search.db81ec45.min.js","translations":{"clipboard.copied":"Copied to clipboard","clipboard.copy":"Copy to clipboard","search.result.more.one":"1 more on this page","search.result.more.other":"# more on this page","search.result.none":"No matching documents","search.result.one":"1 matching document","search.result.other":"# matching documents","search.result.placeholder":"Type to start searching","search.result.term.missing":"Missing","select.version":"Select version"},"version":{"provider":"mike"}}</script>
<scriptid="__config"type="application/json">{"base":"../../..","features":["navigation.top","search.suggest","search.highlight","navigation.expand","navigation.tabs"],"search":"../../../assets/javascripts/workers/search.b97dbffb.min.js","translations":{"clipboard.copied":"Copied to clipboard","clipboard.copy":"Copy to clipboard","search.config.lang":"en","search.config.pipeline":"trimmer, stopWordFilter","search.config.separator":"[\\s\\-]+","search.placeholder":"Search","search.result.more.one":"1 more on this page","search.result.more.other":"# more on this page","search.result.none":"No matching documents","search.result.one":"1 matching document","search.result.other":"# matching documents","search.result.placeholder":"Type to start searching","search.result.term.missing":"Missing","select.version.title":"Select version"},"version":{"provider":"mike"}}</script>
<inputclass="md-option"data-md-color-media="(prefers-color-scheme: light)"data-md-color-scheme="default"data-md-color-primary="black"data-md-color-accent="grey"aria-label="Switch to dark mode"type="radio"name="__palette"id="__palette_1">
<labelclass="md-header__button md-icon"title="Switch to dark mode"for="__palette_2"hidden>
@ -133,6 +129,7 @@
<inputclass="md-option"data-md-color-media="(prefers-color-scheme: dark)"data-md-color-scheme="slate"data-md-color-primary="light-blue"data-md-color-accent=""aria-label="Switch to light mode"type="radio"name="__palette"id="__palette_2">
<labelclass="md-header__button md-icon"title="Switch to light mode"for="__palette_1"hidden>
<scriptid="__config"type="application/json">{"base":"../../..","features":["navigation.top","search.suggest","search.highlight","navigation.expand","navigation.tabs"],"search":"../../../assets/javascripts/workers/search.db81ec45.min.js","translations":{"clipboard.copied":"Copied to clipboard","clipboard.copy":"Copy to clipboard","search.result.more.one":"1 more on this page","search.result.more.other":"# more on this page","search.result.none":"No matching documents","search.result.one":"1 matching document","search.result.other":"# matching documents","search.result.placeholder":"Type to start searching","search.result.term.missing":"Missing","select.version":"Select version"},"version":{"provider":"mike"}}</script>
<scriptid="__config"type="application/json">{"base":"../../..","features":["navigation.top","search.suggest","search.highlight","navigation.expand","navigation.tabs"],"search":"../../../assets/javascripts/workers/search.b97dbffb.min.js","translations":{"clipboard.copied":"Copied to clipboard","clipboard.copy":"Copy to clipboard","search.config.lang":"en","search.config.pipeline":"trimmer, stopWordFilter","search.config.separator":"[\\s\\-]+","search.placeholder":"Search","search.result.more.one":"1 more on this page","search.result.more.other":"# more on this page","search.result.none":"No matching documents","search.result.one":"1 matching document","search.result.other":"# matching documents","search.result.placeholder":"Type to start searching","search.result.term.missing":"Missing","select.version.title":"Select version"},"version":{"provider":"mike"}}</script>
<inputclass="md-option"data-md-color-media="(prefers-color-scheme: light)"data-md-color-scheme="default"data-md-color-primary="black"data-md-color-accent="grey"aria-label="Switch to dark mode"type="radio"name="__palette"id="__palette_1">
<labelclass="md-header__button md-icon"title="Switch to dark mode"for="__palette_2"hidden>
@ -133,6 +129,7 @@
<inputclass="md-option"data-md-color-media="(prefers-color-scheme: dark)"data-md-color-scheme="slate"data-md-color-primary="light-blue"data-md-color-accent=""aria-label="Switch to light mode"type="radio"name="__palette"id="__palette_2">
<labelclass="md-header__button md-icon"title="Switch to light mode"for="__palette_1"hidden>
<p>Since the config options and the config file are changing quite a bit, it’s hard to keep track of all the supported config file settings, so here’s an example showing all of them as of the time of writing:</p>
<divclass="highlight"><pre><span></span><code><spanclass="c1"># k3d configuration file, saved as e.g. /home/me/myk3dcluster.yaml</span>
<spanclass="nt">apiVersion</span><spanclass="p">:</span><spanclass="w"></span><spanclass="l l-Scalar l-Scalar-Plain">k3d.io/v1alpha5</span><spanclass="w"></span><spanclass="c1"># this will change in the future as we make everything more stable</span>
<spanclass="nt">kind</span><spanclass="p">:</span><spanclass="w"></span><spanclass="l l-Scalar l-Scalar-Plain">Simple</span><spanclass="w"></span><spanclass="c1"># internally, we also have a Cluster config, which is not yet available externally</span>
<spanclass="w"></span><spanclass="nt">name</span><spanclass="p">:</span><spanclass="w"></span><spanclass="l l-Scalar l-Scalar-Plain">mycluster</span><spanclass="w"></span><spanclass="c1"># name that you want to give to your cluster (will still be prefixed with `k3d-`)</span>
<spanclass="nt">servers</span><spanclass="p">:</span><spanclass="w"></span><spanclass="l l-Scalar l-Scalar-Plain">1</span><spanclass="w"></span><spanclass="c1"># same as `--servers 1`</span>
<spanclass="nt">agents</span><spanclass="p">:</span><spanclass="w"></span><spanclass="l l-Scalar l-Scalar-Plain">2</span><spanclass="w"></span><spanclass="c1"># same as `--agents 2`</span>
<spanclass="nt">kubeAPI</span><spanclass="p">:</span><spanclass="w"></span><spanclass="c1"># same as `--api-port myhost.my.domain:6445` (where the name would resolve to 127.0.0.1)</span>
<spanclass="w"></span><spanclass="nt">host</span><spanclass="p">:</span><spanclass="w"></span><spanclass="s">"myhost.my.domain"</span><spanclass="w"></span><spanclass="c1"># important for the `server` setting in the kubeconfig</span>
<spanclass="w"></span><spanclass="nt">hostIP</span><spanclass="p">:</span><spanclass="w"></span><spanclass="s">"127.0.0.1"</span><spanclass="w"></span><spanclass="c1"># where the Kubernetes API will be listening on</span>
<spanclass="w"></span><spanclass="nt">hostPort</span><spanclass="p">:</span><spanclass="w"></span><spanclass="s">"6445"</span><spanclass="w"></span><spanclass="c1"># where the Kubernetes API listening port will be mapped to on your host system</span>
<spanclass="nt">image</span><spanclass="p">:</span><spanclass="w"></span><spanclass="l l-Scalar l-Scalar-Plain">rancher/k3s:v1.20.4-k3s1</span><spanclass="w"></span><spanclass="c1"># same as `--image rancher/k3s:v1.20.4-k3s1`</span>
<spanclass="nt">network</span><spanclass="p">:</span><spanclass="w"></span><spanclass="l l-Scalar l-Scalar-Plain">my-custom-net</span><spanclass="w"></span><spanclass="c1"># same as `--network my-custom-net`</span>
<spanclass="nt">subnet</span><spanclass="p">:</span><spanclass="w"></span><spanclass="s">"172.28.0.0/16"</span><spanclass="w"></span><spanclass="c1"># same as `--subnet 172.28.0.0/16`</span>
<spanclass="nt">token</span><spanclass="p">:</span><spanclass="w"></span><spanclass="l l-Scalar l-Scalar-Plain">superSecretToken</span><spanclass="w"></span><spanclass="c1"># same as `--token superSecretToken`</span>
<spanclass="nt">volumes</span><spanclass="p">:</span><spanclass="w"></span><spanclass="c1"># repeatable flags are represented as YAML lists</span>
<spanclass="w"></span><spanclass="p p-Indicator">-</span><spanclass="w"></span><spanclass="nt">volume</span><spanclass="p">:</span><spanclass="w"></span><spanclass="l l-Scalar l-Scalar-Plain">/my/host/path:/path/in/node</span><spanclass="w"></span><spanclass="c1"># same as `--volume '/my/host/path:/path/in/node@server:0;agent:*'`</span>
<spanclass="w"></span><spanclass="p p-Indicator">-</span><spanclass="w"></span><spanclass="nt">port</span><spanclass="p">:</span><spanclass="w"></span><spanclass="l l-Scalar l-Scalar-Plain">8080:80</span><spanclass="w"></span><spanclass="c1"># same as `--port '8080:80@loadbalancer'`</span>
<spanclass="w"></span><spanclass="p p-Indicator">-</span><spanclass="w"></span><spanclass="nt">envVar</span><spanclass="p">:</span><spanclass="w"></span><spanclass="l l-Scalar l-Scalar-Plain">bar=baz</span><spanclass="w"></span><spanclass="c1"># same as `--env 'bar=baz@server:0'`</span>
<spanclass="nt">registries</span><spanclass="p">:</span><spanclass="w"></span><spanclass="c1"># define how registries should be created or used</span>
<spanclass="w"></span><spanclass="nt">create</span><spanclass="p">:</span><spanclass="w"></span><spanclass="c1"># creates a default registry to be used with the cluster; same as `--registry-create registry.localhost`</span>
<spanclass="w"></span><spanclass="nt">proxy</span><spanclass="p">:</span><spanclass="w"></span><spanclass="c1"># omit this to have a "normal" registry, set this to create a registry proxy (pull-through cache)</span>
<spanclass="w"></span><spanclass="nt">remoteURL</span><spanclass="p">:</span><spanclass="w"></span><spanclass="l l-Scalar l-Scalar-Plain">https://registry-1.docker.io</span><spanclass="w"></span><spanclass="c1"># mirror the DockerHub registry</span>
<spanclass="w"></span><spanclass="p p-Indicator">-</span><spanclass="w"></span><spanclass="l l-Scalar l-Scalar-Plain">k3d-myotherregistry:5000</span><spanclass="w"></span><spanclass="c1"># some other k3d-managed registry; same as `--registry-use 'k3d-myotherregistry:5000'`</span>
<spanclass="w"></span><spanclass="nt">config</span><spanclass="p">:</span><spanclass="w"></span><spanclass="p p-Indicator">|</span><spanclass="w"></span><spanclass="c1"># define contents of the `registries.yaml` file (or reference a file); same as `--registry-config /path/to/config.yaml`</span>
<spanclass="nt">hostAliases</span><spanclass="p">:</span><spanclass="w"></span><spanclass="c1"># /etc/hosts style entries to be injected into /etc/hosts in the node containers and in the NodeHosts section in CoreDNS</span>
<divclass="highlight"><pre><span></span><code><spanclass="c1"># k3d configuration file, saved as e.g. /home/me/myk3dcluster.yaml</span><spanclass="w"></span>
<spanclass="nt">apiVersion</span><spanclass="p">:</span><spanclass="w"></span><spanclass="l l-Scalar l-Scalar-Plain">k3d.io/v1alpha5</span><spanclass="w"></span><spanclass="c1"># this will change in the future as we make everything more stable</span><spanclass="w"></span>
<spanclass="nt">kind</span><spanclass="p">:</span><spanclass="w"></span><spanclass="l l-Scalar l-Scalar-Plain">Simple</span><spanclass="w"></span><spanclass="c1"># internally, we also have a Cluster config, which is not yet available externally</span><spanclass="w"></span>
<spanclass="w"></span><spanclass="nt">name</span><spanclass="p">:</span><spanclass="w"></span><spanclass="l l-Scalar l-Scalar-Plain">mycluster</span><spanclass="w"></span><spanclass="c1"># name that you want to give to your cluster (will still be prefixed with `k3d-`)</span><spanclass="w"></span>
<spanclass="nt">servers</span><spanclass="p">:</span><spanclass="w"></span><spanclass="l l-Scalar l-Scalar-Plain">1</span><spanclass="w"></span><spanclass="c1"># same as `--servers 1`</span><spanclass="w"></span>
<spanclass="nt">agents</span><spanclass="p">:</span><spanclass="w"></span><spanclass="l l-Scalar l-Scalar-Plain">2</span><spanclass="w"></span><spanclass="c1"># same as `--agents 2`</span><spanclass="w"></span>
<spanclass="nt">kubeAPI</span><spanclass="p">:</span><spanclass="w"></span><spanclass="c1"># same as `--api-port myhost.my.domain:6445` (where the name would resolve to 127.0.0.1)</span><spanclass="w"></span>
<spanclass="w"></span><spanclass="nt">host</span><spanclass="p">:</span><spanclass="w"></span><spanclass="s">"myhost.my.domain"</span><spanclass="w"></span><spanclass="c1"># important for the `server` setting in the kubeconfig</span><spanclass="w"></span>
<spanclass="w"></span><spanclass="nt">hostIP</span><spanclass="p">:</span><spanclass="w"></span><spanclass="s">"127.0.0.1"</span><spanclass="w"></span><spanclass="c1"># where the Kubernetes API will be listening on</span><spanclass="w"></span>
<spanclass="w"></span><spanclass="nt">hostPort</span><spanclass="p">:</span><spanclass="w"></span><spanclass="s">"6445"</span><spanclass="w"></span><spanclass="c1"># where the Kubernetes API listening port will be mapped to on your host system</span><spanclass="w"></span>
<spanclass="nt">image</span><spanclass="p">:</span><spanclass="w"></span><spanclass="l l-Scalar l-Scalar-Plain">rancher/k3s:v1.20.4-k3s1</span><spanclass="w"></span><spanclass="c1"># same as `--image rancher/k3s:v1.20.4-k3s1`</span><spanclass="w"></span>
<spanclass="nt">network</span><spanclass="p">:</span><spanclass="w"></span><spanclass="l l-Scalar l-Scalar-Plain">my-custom-net</span><spanclass="w"></span><spanclass="c1"># same as `--network my-custom-net`</span><spanclass="w"></span>
<spanclass="nt">subnet</span><spanclass="p">:</span><spanclass="w"></span><spanclass="s">"172.28.0.0/16"</span><spanclass="w"></span><spanclass="c1"># same as `--subnet 172.28.0.0/16`</span><spanclass="w"></span>
<spanclass="nt">token</span><spanclass="p">:</span><spanclass="w"></span><spanclass="l l-Scalar l-Scalar-Plain">superSecretToken</span><spanclass="w"></span><spanclass="c1"># same as `--token superSecretToken`</span><spanclass="w"></span>
<spanclass="nt">volumes</span><spanclass="p">:</span><spanclass="w"></span><spanclass="c1"># repeatable flags are represented as YAML lists</span><spanclass="w"></span>
<spanclass="w"></span><spanclass="p p-Indicator">-</span><spanclass="w"></span><spanclass="nt">volume</span><spanclass="p">:</span><spanclass="w"></span><spanclass="l l-Scalar l-Scalar-Plain">/my/host/path:/path/in/node</span><spanclass="w"></span><spanclass="c1"># same as `--volume '/my/host/path:/path/in/node@server:0;agent:*'`</span><spanclass="w"></span>
<spanclass="w"></span><spanclass="p p-Indicator">-</span><spanclass="w"></span><spanclass="nt">port</span><spanclass="p">:</span><spanclass="w"></span><spanclass="l l-Scalar l-Scalar-Plain">8080:80</span><spanclass="w"></span><spanclass="c1"># same as `--port '8080:80@loadbalancer'`</span><spanclass="w"></span>
<spanclass="w"></span><spanclass="p p-Indicator">-</span><spanclass="w"></span><spanclass="nt">envVar</span><spanclass="p">:</span><spanclass="w"></span><spanclass="l l-Scalar l-Scalar-Plain">bar=baz</span><spanclass="w"></span><spanclass="c1"># same as `--env 'bar=baz@server:0'`</span><spanclass="w"></span>
<spanclass="nt">registries</span><spanclass="p">:</span><spanclass="w"></span><spanclass="c1"># define how registries should be created or used</span><spanclass="w"></span>
<spanclass="w"></span><spanclass="nt">create</span><spanclass="p">:</span><spanclass="w"></span><spanclass="c1"># creates a default registry to be used with the cluster; same as `--registry-create registry.localhost`</span><spanclass="w"></span>
<spanclass="w"></span><spanclass="nt">proxy</span><spanclass="p">:</span><spanclass="w"></span><spanclass="c1"># omit this to have a "normal" registry, set this to create a registry proxy (pull-through cache)</span><spanclass="w"></span>
<spanclass="w"></span><spanclass="nt">remoteURL</span><spanclass="p">:</span><spanclass="w"></span><spanclass="l l-Scalar l-Scalar-Plain">https://registry-1.docker.io</span><spanclass="w"></span><spanclass="c1"># mirror the DockerHub registry</span><spanclass="w"></span>
<spanclass="w"></span><spanclass="p p-Indicator">-</span><spanclass="w"></span><spanclass="l l-Scalar l-Scalar-Plain">k3d-myotherregistry:5000</span><spanclass="w"></span><spanclass="c1"># some other k3d-managed registry; same as `--registry-use 'k3d-myotherregistry:5000'`</span><spanclass="w"></span>
<spanclass="w"></span><spanclass="nt">config</span><spanclass="p">:</span><spanclass="w"></span><spanclass="p p-Indicator">|</span><spanclass="w"></span><spanclass="c1"># define contents of the `registries.yaml` file (or reference a file); same as `--registry-config /path/to/config.yaml`</span><spanclass="w"></span>
<spanclass="nt">hostAliases</span><spanclass="p">:</span><spanclass="w"></span><spanclass="c1"># /etc/hosts style entries to be injected into /etc/hosts in the node containers and in the NodeHosts section in CoreDNS</span><spanclass="w"></span>
<spanclass="w"></span><spanclass="nt">wait</span><spanclass="p">:</span><spanclass="w"></span><spanclass="l l-Scalar l-Scalar-Plain">true</span><spanclass="w"></span><spanclass="c1"># wait for cluster to be usable before returning; same as `--wait` (default: true)</span>
<spanclass="w"></span><spanclass="nt">timeout</span><spanclass="p">:</span><spanclass="w"></span><spanclass="s">"60s"</span><spanclass="w"></span><spanclass="c1"># wait timeout before aborting; same as `--timeout 60s`</span>
<spanclass="w"></span><spanclass="nt">disableLoadbalancer</span><spanclass="p">:</span><spanclass="w"></span><spanclass="l l-Scalar l-Scalar-Plain">false</span><spanclass="w"></span><spanclass="c1"># same as `--no-lb`</span>
<spanclass="w"></span><spanclass="nt">disableImageVolume</span><spanclass="p">:</span><spanclass="w"></span><spanclass="l l-Scalar l-Scalar-Plain">false</span><spanclass="w"></span><spanclass="c1"># same as `--no-image-volume`</span>
<spanclass="w"></span><spanclass="nt">disableRollback</span><spanclass="p">:</span><spanclass="w"></span><spanclass="l l-Scalar l-Scalar-Plain">false</span><spanclass="w"></span><spanclass="c1"># same as `--no-Rollback`</span>
<spanclass="w"></span><spanclass="nt">k3s</span><spanclass="p">:</span><spanclass="w"></span><spanclass="c1"># options passed on to K3s itself</span>
<spanclass="w"></span><spanclass="nt">extraArgs</span><spanclass="p">:</span><spanclass="w"></span><spanclass="c1"># additional arguments passed to the `k3s server|agent` command; same as `--k3s-arg`</span>
<spanclass="w"></span><spanclass="p p-Indicator">-</span><spanclass="w"></span><spanclass="nt">label</span><spanclass="p">:</span><spanclass="w"></span><spanclass="l l-Scalar l-Scalar-Plain">foo=bar</span><spanclass="w"></span><spanclass="c1"># same as `--k3s-node-label 'foo=bar@agent:1'` -> this results in a Kubernetes node label</span>
<spanclass="w"></span><spanclass="nt">updateDefaultKubeconfig</span><spanclass="p">:</span><spanclass="w"></span><spanclass="l l-Scalar l-Scalar-Plain">true</span><spanclass="w"></span><spanclass="c1"># add new cluster to your default Kubeconfig; same as `--kubeconfig-update-default` (default: true)</span>
<spanclass="w"></span><spanclass="nt">switchCurrentContext</span><spanclass="p">:</span><spanclass="w"></span><spanclass="l l-Scalar l-Scalar-Plain">true</span><spanclass="w"></span><spanclass="c1"># also set current-context to the new cluster's context; same as `--kubeconfig-switch-context` (default: true)</span>
<spanclass="w"></span><spanclass="nt">runtime</span><spanclass="p">:</span><spanclass="w"></span><spanclass="c1"># runtime (docker) specific options</span>
<spanclass="w"></span><spanclass="nt">gpuRequest</span><spanclass="p">:</span><spanclass="w"></span><spanclass="l l-Scalar l-Scalar-Plain">all</span><spanclass="w"></span><spanclass="c1"># same as `--gpus all`</span>
<spanclass="w"></span><spanclass="p p-Indicator">-</span><spanclass="w"></span><spanclass="nt">label</span><spanclass="p">:</span><spanclass="w"></span><spanclass="l l-Scalar l-Scalar-Plain">bar=baz</span><spanclass="w"></span><spanclass="c1"># same as `--runtime-label 'bar=baz@agent:1'` -> this results in a runtime (docker) container label</span>
<spanclass="w"></span><spanclass="nt">wait</span><spanclass="p">:</span><spanclass="w"></span><spanclass="l l-Scalar l-Scalar-Plain">true</span><spanclass="w"></span><spanclass="c1"># wait for cluster to be usable before returning; same as `--wait` (default: true)</span><spanclass="w"></span>
<spanclass="w"></span><spanclass="nt">timeout</span><spanclass="p">:</span><spanclass="w"></span><spanclass="s">"60s"</span><spanclass="w"></span><spanclass="c1"># wait timeout before aborting; same as `--timeout 60s`</span><spanclass="w"></span>
<spanclass="w"></span><spanclass="nt">disableLoadbalancer</span><spanclass="p">:</span><spanclass="w"></span><spanclass="l l-Scalar l-Scalar-Plain">false</span><spanclass="w"></span><spanclass="c1"># same as `--no-lb`</span><spanclass="w"></span>
<spanclass="w"></span><spanclass="nt">disableImageVolume</span><spanclass="p">:</span><spanclass="w"></span><spanclass="l l-Scalar l-Scalar-Plain">false</span><spanclass="w"></span><spanclass="c1"># same as `--no-image-volume`</span><spanclass="w"></span>
<spanclass="w"></span><spanclass="nt">disableRollback</span><spanclass="p">:</span><spanclass="w"></span><spanclass="l l-Scalar l-Scalar-Plain">false</span><spanclass="w"></span><spanclass="c1"># same as `--no-Rollback`</span><spanclass="w"></span>
<spanclass="w"></span><spanclass="nt">k3s</span><spanclass="p">:</span><spanclass="w"></span><spanclass="c1"># options passed on to K3s itself</span><spanclass="w"></span>
<spanclass="w"></span><spanclass="nt">extraArgs</span><spanclass="p">:</span><spanclass="w"></span><spanclass="c1"># additional arguments passed to the `k3s server|agent` command; same as `--k3s-arg`</span><spanclass="w"></span>
<spanclass="w"></span><spanclass="p p-Indicator">-</span><spanclass="w"></span><spanclass="nt">label</span><spanclass="p">:</span><spanclass="w"></span><spanclass="l l-Scalar l-Scalar-Plain">foo=bar</span><spanclass="w"></span><spanclass="c1"># same as `--k3s-node-label 'foo=bar@agent:1'` -> this results in a Kubernetes node label</span><spanclass="w"></span>
<spanclass="w"></span><spanclass="nt">updateDefaultKubeconfig</span><spanclass="p">:</span><spanclass="w"></span><spanclass="l l-Scalar l-Scalar-Plain">true</span><spanclass="w"></span><spanclass="c1"># add new cluster to your default Kubeconfig; same as `--kubeconfig-update-default` (default: true)</span><spanclass="w"></span>
<spanclass="w"></span><spanclass="nt">switchCurrentContext</span><spanclass="p">:</span><spanclass="w"></span><spanclass="l l-Scalar l-Scalar-Plain">true</span><spanclass="w"></span><spanclass="c1"># also set current-context to the new cluster's context; same as `--kubeconfig-switch-context` (default: true)</span><spanclass="w"></span>
<spanclass="w"></span><spanclass="nt">runtime</span><spanclass="p">:</span><spanclass="w"></span><spanclass="c1"># runtime (docker) specific options</span><spanclass="w"></span>
<spanclass="w"></span><spanclass="nt">gpuRequest</span><spanclass="p">:</span><spanclass="w"></span><spanclass="l l-Scalar l-Scalar-Plain">all</span><spanclass="w"></span><spanclass="c1"># same as `--gpus all`</span><spanclass="w"></span>
<spanclass="w"></span><spanclass="p p-Indicator">-</span><spanclass="w"></span><spanclass="nt">label</span><spanclass="p">:</span><spanclass="w"></span><spanclass="l l-Scalar l-Scalar-Plain">bar=baz</span><spanclass="w"></span><spanclass="c1"># same as `--runtime-label 'bar=baz@agent:1'` -> this results in a runtime (docker) container label</span><spanclass="w"></span>
@ -1561,11 +1575,10 @@ For example, you use the same config file to create three clusters which only ha
<divclass="md-dialog"data-md-component="dialog">
<divclass="md-dialog__inner md-typeset"></div>
</div>
<scriptid="__config"type="application/json">{"base":"../..","features":["navigation.top","search.suggest","search.highlight","navigation.expand","navigation.tabs"],"search":"../../assets/javascripts/workers/search.db81ec45.min.js","translations":{"clipboard.copied":"Copied to clipboard","clipboard.copy":"Copy to clipboard","search.result.more.one":"1 more on this page","search.result.more.other":"# more on this page","search.result.none":"No matching documents","search.result.one":"1 matching document","search.result.other":"# matching documents","search.result.placeholder":"Type to start searching","search.result.term.missing":"Missing","select.version":"Select version"},"version":{"provider":"mike"}}</script>
<scriptid="__config"type="application/json">{"base":"../..","features":["navigation.top","search.suggest","search.highlight","navigation.expand","navigation.tabs"],"search":"../../assets/javascripts/workers/search.b97dbffb.min.js","translations":{"clipboard.copied":"Copied to clipboard","clipboard.copy":"Copy to clipboard","search.config.lang":"en","search.config.pipeline":"trimmer, stopWordFilter","search.config.separator":"[\\s\\-]+","search.placeholder":"Search","search.result.more.one":"1 more on this page","search.result.more.other":"# more on this page","search.result.none":"No matching documents","search.result.one":"1 matching document","search.result.other":"# matching documents","search.result.placeholder":"Type to start searching","search.result.term.missing":"Missing","select.version.title":"Select version"},"version":{"provider":"mike"}}</script>
<inputclass="md-option"data-md-color-media="(prefers-color-scheme: light)"data-md-color-scheme="default"data-md-color-primary="black"data-md-color-accent="grey"aria-label="Switch to dark mode"type="radio"name="__palette"id="__palette_1">
<labelclass="md-header__button md-icon"title="Switch to dark mode"for="__palette_2"hidden>
@ -133,6 +129,7 @@
<inputclass="md-option"data-md-color-media="(prefers-color-scheme: dark)"data-md-color-scheme="slate"data-md-color-primary="light-blue"data-md-color-accent=""aria-label="Switch to light mode"type="radio"name="__palette"id="__palette_2">
<labelclass="md-header__button md-icon"title="Switch to light mode"for="__palette_1"hidden>
<p>Create an ingress object for it by copying the following manifest to a file and applying with <codeclass="highlight">kubectl<spanclass="w"></span>apply<spanclass="w"></span>-f<spanclass="w"></span>thatfile.yaml</code></p>
<p>Create an ingress object for it by copying the following manifest to a file and applying with <codeclass="highlight">kubectlapply-fthatfile.yaml</code></p>
<p><strong>Note</strong>: <code>k3s</code> deploys <ahref="https://github.com/containous/traefik"><code>traefik</code></a> as the default ingress controller</p>
<divclass="highlight"><pre><span></span><code><spanclass="c1"># apiVersion: networking.k8s.io/v1beta1 # for k3s < v1.19</span>
<li><strong>Note 1</strong>: Kubernetes’ default NodePort range is <ahref="https://kubernetes.io/docs/concepts/services-networking/service/#nodeport"><code>30000-32767</code></a></li>
<li>
@ -1341,28 +1324,28 @@ Therefore, we have to create the cluster in a way, that the internal port 80 (wh
</ul>
</li>
<li>
<p>Create a NodePort service for it by copying the following manifest to a file and applying it with <codeclass="highlight">kubectl<spanclass="w"></span>apply<spanclass="w"></span>-f</code></p>
@ -1421,11 +1435,10 @@ Therefore, we have to create the cluster in a way, that the internal port 80 (wh
<divclass="md-dialog"data-md-component="dialog">
<divclass="md-dialog__inner md-typeset"></div>
</div>
<scriptid="__config"type="application/json">{"base":"../..","features":["navigation.top","search.suggest","search.highlight","navigation.expand","navigation.tabs"],"search":"../../assets/javascripts/workers/search.db81ec45.min.js","translations":{"clipboard.copied":"Copied to clipboard","clipboard.copy":"Copy to clipboard","search.result.more.one":"1 more on this page","search.result.more.other":"# more on this page","search.result.none":"No matching documents","search.result.one":"1 matching document","search.result.other":"# matching documents","search.result.placeholder":"Type to start searching","search.result.term.missing":"Missing","select.version":"Select version"},"version":{"provider":"mike"}}</script>
<scriptid="__config"type="application/json">{"base":"../..","features":["navigation.top","search.suggest","search.highlight","navigation.expand","navigation.tabs"],"search":"../../assets/javascripts/workers/search.b97dbffb.min.js","translations":{"clipboard.copied":"Copied to clipboard","clipboard.copy":"Copy to clipboard","search.config.lang":"en","search.config.pipeline":"trimmer, stopWordFilter","search.config.separator":"[\\s\\-]+","search.placeholder":"Search","search.result.more.one":"1 more on this page","search.result.more.other":"# more on this page","search.result.none":"No matching documents","search.result.one":"1 matching document","search.result.other":"# matching documents","search.result.placeholder":"Type to start searching","search.result.term.missing":"Missing","select.version.title":"Select version"},"version":{"provider":"mike"}}</script>
<inputclass="md-option"data-md-color-media="(prefers-color-scheme: light)"data-md-color-scheme="default"data-md-color-primary="black"data-md-color-accent="grey"aria-label="Switch to dark mode"type="radio"name="__palette"id="__palette_1">
<labelclass="md-header__button md-icon"title="Switch to dark mode"for="__palette_2"hidden>
@ -133,6 +129,7 @@
<inputclass="md-option"data-md-color-media="(prefers-color-scheme: dark)"data-md-color-scheme="slate"data-md-color-primary="light-blue"data-md-color-accent=""aria-label="Switch to light mode"type="radio"name="__palette"id="__palette_2">
<labelclass="md-header__button md-icon"title="Switch to light mode"for="__palette_1"hidden>
<scriptid="__config"type="application/json">{"base":"../..","features":["navigation.top","search.suggest","search.highlight","navigation.expand","navigation.tabs"],"search":"../../assets/javascripts/workers/search.db81ec45.min.js","translations":{"clipboard.copied":"Copied to clipboard","clipboard.copy":"Copy to clipboard","search.result.more.one":"1 more on this page","search.result.more.other":"# more on this page","search.result.none":"No matching documents","search.result.one":"1 matching document","search.result.other":"# matching documents","search.result.placeholder":"Type to start searching","search.result.term.missing":"Missing","select.version":"Select version"},"version":{"provider":"mike"}}</script>
<scriptid="__config"type="application/json">{"base":"../..","features":["navigation.top","search.suggest","search.highlight","navigation.expand","navigation.tabs"],"search":"../../assets/javascripts/workers/search.b97dbffb.min.js","translations":{"clipboard.copied":"Copied to clipboard","clipboard.copy":"Copy to clipboard","search.config.lang":"en","search.config.pipeline":"trimmer, stopWordFilter","search.config.separator":"[\\s\\-]+","search.placeholder":"Search","search.result.more.one":"1 more on this page","search.result.more.other":"# more on this page","search.result.none":"No matching documents","search.result.one":"1 matching document","search.result.other":"# matching documents","search.result.placeholder":"Type to start searching","search.result.term.missing":"Missing","select.version.title":"Select version"},"version":{"provider":"mike"}}</script>
<inputclass="md-option"data-md-color-media="(prefers-color-scheme: light)"data-md-color-scheme="default"data-md-color-primary="black"data-md-color-accent="grey"aria-label="Switch to dark mode"type="radio"name="__palette"id="__palette_1">
<labelclass="md-header__button md-icon"title="Switch to dark mode"for="__palette_2"hidden>
@ -133,6 +129,7 @@
<inputclass="md-option"data-md-color-media="(prefers-color-scheme: dark)"data-md-color-scheme="slate"data-md-color-primary="light-blue"data-md-color-accent=""aria-label="Switch to light mode"type="radio"name="__palette"id="__palette_2">
<labelclass="md-header__button md-icon"title="Switch to light mode"for="__palette_1"hidden>
@ -1606,11 +1620,10 @@ The <code>hostPort</code> in this case is a port in a K3s container, not your lo
<divclass="md-dialog"data-md-component="dialog">
<divclass="md-dialog__inner md-typeset"></div>
</div>
<scriptid="__config"type="application/json">{"base":"../..","features":["navigation.top","search.suggest","search.highlight","navigation.expand","navigation.tabs"],"search":"../../assets/javascripts/workers/search.db81ec45.min.js","translations":{"clipboard.copied":"Copied to clipboard","clipboard.copy":"Copy to clipboard","search.result.more.one":"1 more on this page","search.result.more.other":"# more on this page","search.result.none":"No matching documents","search.result.one":"1 matching document","search.result.other":"# matching documents","search.result.placeholder":"Type to start searching","search.result.term.missing":"Missing","select.version":"Select version"},"version":{"provider":"mike"}}</script>
<scriptid="__config"type="application/json">{"base":"../..","features":["navigation.top","search.suggest","search.highlight","navigation.expand","navigation.tabs"],"search":"../../assets/javascripts/workers/search.b97dbffb.min.js","translations":{"clipboard.copied":"Copied to clipboard","clipboard.copy":"Copy to clipboard","search.config.lang":"en","search.config.pipeline":"trimmer, stopWordFilter","search.config.separator":"[\\s\\-]+","search.placeholder":"Search","search.result.more.one":"1 more on this page","search.result.more.other":"# more on this page","search.result.none":"No matching documents","search.result.one":"1 matching document","search.result.other":"# matching documents","search.result.placeholder":"Type to start searching","search.result.term.missing":"Missing","select.version.title":"Select version"},"version":{"provider":"mike"}}</script>
<inputclass="md-option"data-md-color-media="(prefers-color-scheme: light)"data-md-color-scheme="default"data-md-color-primary="black"data-md-color-accent="grey"aria-label="Switch to dark mode"type="radio"name="__palette"id="__palette_1">
<labelclass="md-header__button md-icon"title="Switch to dark mode"for="__palette_2"hidden>
@ -133,6 +129,7 @@
<inputclass="md-option"data-md-color-media="(prefers-color-scheme: dark)"data-md-color-scheme="slate"data-md-color-primary="light-blue"data-md-color-accent=""aria-label="Switch to light mode"type="radio"name="__palette"id="__palette_2">
<labelclass="md-header__button md-icon"title="Switch to light mode"for="__palette_1"hidden>
<li><em>Note:</em> this will create (or update) the file <code>$HOME/.k3d/kubeconfig-mycluster.yaml</code></li>
<li><em>Tip:</em> Use it: <codeclass="highlight"><spanclass="nb">export</span><spanclass="w"></span><spanclass="nv">KUBECONFIG</span><spanclass="o">=</span><spanclass="k">$(</span>k3d<spanclass="w"></span>kubeconfig<spanclass="w"></span>write<spanclass="w"></span>mycluster<spanclass="k">)</span></code></li>
<li><em>Note 2</em>: alternatively you can use <codeclass="highlight">k3d<spanclass="w"></span>kubeconfig<spanclass="w"></span>get<spanclass="w"></span>mycluster<spanclass="w"></span>><spanclass="w"></span>some-file.yaml</code></li>
<li><em>Tip:</em> Use it: <codeclass="highlight"><spanclass="nb">export</span><spanclass="nv">KUBECONFIG</span><spanclass="o">=</span><spanclass="k">$(</span>k3dkubeconfigwritemycluster<spanclass="k">)</span></code></li>
<li><em>Note 2</em>: alternatively you can use <codeclass="highlight">k3dkubeconfiggetmycluster>some-file.yaml</code></li>
</ul>
</li>
</ul>
@ -1301,7 +1284,7 @@ To get a kubeconfig set up for you to connect to a k3d cluster without this auto
<li>
<p>Update your default kubeconfig <strong>upon</strong> cluster creation (DEFAULT)</p>
<li><em>Note:</em> this won’t switch the current-context</li>
</ul>
</li>
@ -1334,7 +1317,7 @@ This is intended to be least intrusive, since the current-context has a global e
You can switch the current-context directly with the <code>kubeconfig merge</code> command by adding the <code>--kubeconfig-switch-context</code> flag.</p>
</div>
<h2id="removing-cluster-details-from-the-kubeconfig">Removing cluster details from the kubeconfig<aclass="headerlink"href="#removing-cluster-details-from-the-kubeconfig"title="Permanent link">¶</a></h2>
<p><codeclass="highlight">k3d<spanclass="w"></span>cluster<spanclass="w"></span>delete<spanclass="w"></span>mycluster</code> will always remove the details for <code>mycluster</code> from the default kubeconfig.
<p><codeclass="highlight">k3d clusterdeletemycluster</code> will always remove the details for <code>mycluster</code> from the default kubeconfig.
It will also delete the respective kubeconfig file in <code>$HOME/.k3d/</code> if it exists.</p>
@ -1397,11 +1411,10 @@ Note, that with multiple cluster specified, the <code>--kubeconfig-switch-contex
<divclass="md-dialog"data-md-component="dialog">
<divclass="md-dialog__inner md-typeset"></div>
</div>
<scriptid="__config"type="application/json">{"base":"../..","features":["navigation.top","search.suggest","search.highlight","navigation.expand","navigation.tabs"],"search":"../../assets/javascripts/workers/search.db81ec45.min.js","translations":{"clipboard.copied":"Copied to clipboard","clipboard.copy":"Copy to clipboard","search.result.more.one":"1 more on this page","search.result.more.other":"# more on this page","search.result.none":"No matching documents","search.result.one":"1 matching document","search.result.other":"# matching documents","search.result.placeholder":"Type to start searching","search.result.term.missing":"Missing","select.version":"Select version"},"version":{"provider":"mike"}}</script>
<scriptid="__config"type="application/json">{"base":"../..","features":["navigation.top","search.suggest","search.highlight","navigation.expand","navigation.tabs"],"search":"../../assets/javascripts/workers/search.b97dbffb.min.js","translations":{"clipboard.copied":"Copied to clipboard","clipboard.copy":"Copy to clipboard","search.config.lang":"en","search.config.pipeline":"trimmer, stopWordFilter","search.config.separator":"[\\s\\-]+","search.placeholder":"Search","search.result.more.one":"1 more on this page","search.result.more.other":"# more on this page","search.result.none":"No matching documents","search.result.one":"1 matching document","search.result.other":"# matching documents","search.result.placeholder":"Type to start searching","search.result.term.missing":"Missing","select.version.title":"Select version"},"version":{"provider":"mike"}}</script>
<inputclass="md-option"data-md-color-media="(prefers-color-scheme: light)"data-md-color-scheme="default"data-md-color-primary="black"data-md-color-accent="grey"aria-label="Switch to dark mode"type="radio"name="__palette"id="__palette_1">
<labelclass="md-header__button md-icon"title="Switch to dark mode"for="__palette_2"hidden>
@ -133,6 +129,7 @@
<inputclass="md-option"data-md-color-media="(prefers-color-scheme: dark)"data-md-color-scheme="slate"data-md-color-primary="light-blue"data-md-color-accent=""aria-label="Switch to light mode"type="radio"name="__palette"id="__palette_2">
<labelclass="md-header__button md-icon"title="Switch to light mode"for="__palette_1"hidden>
<p>Create a cluster with 3 server nodes using k3s’ embedded etcd database.
The first server to be created will use the <code>--cluster-init</code> flag and k3d will wait for it to be up and running before creating (and connecting) the other server nodes.</p>
<h2id="adding-server-nodes-to-a-running-cluster">Adding server nodes to a running cluster<aclass="headerlink"href="#adding-server-nodes-to-a-running-cluster"title="Permanent link">¶</a></h2>
<p>In theory (and also in practice in most cases), this is as easy as executing the following command:</p>
@ -1336,11 +1350,10 @@ That’s because the initial server node was not started with the <code>--cl
<divclass="md-dialog"data-md-component="dialog">
<divclass="md-dialog__inner md-typeset"></div>
</div>
<scriptid="__config"type="application/json">{"base":"../..","features":["navigation.top","search.suggest","search.highlight","navigation.expand","navigation.tabs"],"search":"../../assets/javascripts/workers/search.db81ec45.min.js","translations":{"clipboard.copied":"Copied to clipboard","clipboard.copy":"Copy to clipboard","search.result.more.one":"1 more on this page","search.result.more.other":"# more on this page","search.result.none":"No matching documents","search.result.one":"1 matching document","search.result.other":"# matching documents","search.result.placeholder":"Type to start searching","search.result.term.missing":"Missing","select.version":"Select version"},"version":{"provider":"mike"}}</script>
<scriptid="__config"type="application/json">{"base":"../..","features":["navigation.top","search.suggest","search.highlight","navigation.expand","navigation.tabs"],"search":"../../assets/javascripts/workers/search.b97dbffb.min.js","translations":{"clipboard.copied":"Copied to clipboard","clipboard.copy":"Copy to clipboard","search.config.lang":"en","search.config.pipeline":"trimmer, stopWordFilter","search.config.separator":"[\\s\\-]+","search.placeholder":"Search","search.result.more.one":"1 more on this page","search.result.more.other":"# more on this page","search.result.none":"No matching documents","search.result.one":"1 matching document","search.result.other":"# matching documents","search.result.placeholder":"Type to start searching","search.result.term.missing":"Missing","select.version.title":"Select version"},"version":{"provider":"mike"}}</script>
<inputclass="md-option"data-md-color-media="(prefers-color-scheme: light)"data-md-color-scheme="default"data-md-color-primary="black"data-md-color-accent="grey"aria-label="Switch to dark mode"type="radio"name="__palette"id="__palette_1">
<labelclass="md-header__button md-icon"title="Switch to dark mode"for="__palette_2"hidden>
@ -133,6 +129,7 @@
<inputclass="md-option"data-md-color-media="(prefers-color-scheme: dark)"data-md-color-scheme="slate"data-md-color-primary="light-blue"data-md-color-accent=""aria-label="Switch to light mode"type="radio"name="__palette"id="__palette_2">
<labelclass="md-header__button md-icon"title="Switch to light mode"for="__palette_1"hidden>
<p>This file is a regular <ahref="https://rancher.com/docs/k3s/latest/en/installation/private-registry/">k3s registries configuration file</a>, and looks like this:</p>
<p>In this example, an image with a name like <code>my.company.registry:5000/nginx:latest</code> would be <em>pulled</em> from the registry running at <code>http://my.company.registry:5000</code>.</p>
<p>This file can also be used for providing additional information necessary for accessing some registries, like <ahref="#authenticated-registries">authentication</a> and <ahref="#secure-registries">certificates</a>.</p>
<h3id="registries-configuration-file-embedded-in-k3ds-simpleconfig">Registries Configuration File embedded in k3d’s SimpleConfig<aclass="headerlink"href="#registries-configuration-file-embedded-in-k3ds-simpleconfig"title="Permanent link">¶</a></h3>
<p>If you’re using a <code>SimpleConfig</code> file to configure your k3d cluster, you may as well embed the registries.yaml in there directly:</p>
<p>Here, the config for the k3d-managed registry, created by the <code>create: {...}</code> option will be merged with the config specified under <code>config: |</code>.</p>
<p>When using secure registries, the <ahref="#registries-file"><code>registries.yaml</code> file</a> must include information about the certificates. For example, if you want to use images from the secure registry running at <code>https://my.company.registry</code>, you must first download a CA file valid for that server and store it in some well-known directory like <code>${HOME}/.k3d/my-company-root.pem</code>. </p>
<p>Then you have to mount the CA file in some directory in the nodes in the cluster and include that mounted file in a <code>configs</code> section in the <ahref="#registries-file"><code>registries.yaml</code> file</a>.<br/>
For example, if we mount the CA file in <code>/etc/ssl/certs/my-company-root.pem</code>, the <code>registries.yaml</code> will look like:</p>
<h2id="using-a-local-registry">Using a local registry<aclass="headerlink"href="#using-a-local-registry"title="Permanent link">¶</a></h2>
<h3id="preface-referencing-local-registries">Preface: Referencing local registries<aclass="headerlink"href="#preface-referencing-local-registries"title="Permanent link">¶</a></h3>
<h4id="create-a-dedicated-registry-together-with-your-cluster">Create a dedicated registry together with your cluster<aclass="headerlink"href="#create-a-dedicated-registry-together-with-your-cluster"title="Permanent link">¶</a></h4>
<ol>
<li>
<p><codeclass="highlight">k3d<spanclass="w"></span>cluster<spanclass="w"></span>create<spanclass="w"></span>mycluster<spanclass="w"></span>--registry-create<spanclass="w"></span>mycluster-registry</code>: This creates your cluster <code>mycluster</code> together with a registry container called <code>mycluster-registry</code></p>
<p><codeclass="highlight">k3d cluster createmycluster--registry-createmycluster-registry</code>: This creates your cluster <code>mycluster</code> together with a registry container called <code>mycluster-registry</code></p>
<ul>
<li>k3d sets everything up in the cluster for containerd to be able to pull images from that registry (using the <code>registries.yaml</code> file)</li>
<li>the port, which the registry is listening on will be mapped to a random port on your host system</li>
</ul>
</li>
<li>
<p>Check the k3d command output or <codeclass="highlight">docker<spanclass="w"></span>ps<spanclass="w"></span>-f<spanclass="w"></span><spanclass="nv">name</span><spanclass="o">=</span>mycluster-registry</code> to find the exposed port</p>
<p>Check the k3d command output or <codeclass="highlight">docker ps -f<spanclass="nv">name</span><spanclass="o">=</span>mycluster-registry</code> to find the exposed port</p>
</li>
<li><ahref="#testing-your-registry">Test your registry</a></li>
</ol>
<h4id="create-a-customized-k3d-managed-registry">Create a customized k3d-managed registry<aclass="headerlink"href="#create-a-customized-k3d-managed-registry"title="Permanent link">¶</a></h4>
<ol>
<li><codeclass="highlight">k3d<spanclass="w"></span>registry<spanclass="w"></span>create<spanclass="w"></span>myregistry.localhost<spanclass="w"></span>--port<spanclass="w"></span><spanclass="m">12345</span></code> creates a new registry called <code>k3d-myregistry.localhost</code> (could be used with automatic resolution of <code>*.localhost</code>, see next section - also, <strong>note the <code>k3d-</code> prefix</strong> that k3d adds to all resources it creates)</li>
<li><codeclass="highlight">k3d<spanclass="w"></span>cluster<spanclass="w"></span>create<spanclass="w"></span>newcluster<spanclass="w"></span>--registry-use<spanclass="w"></span>k3d-myregistry.localhost:12345</code> (make sure you use the <strong><code>k3d-</code> prefix</strong> here) creates a new cluster set up to use that registry</li>
<li><codeclass="highlight">k3dregistry createmyregistry.localhost--port<spanclass="m">12345</span></code> creates a new registry called <code>k3d-myregistry.localhost</code> (could be used with automatic resolution of <code>*.localhost</code>, see next section - also, <strong>note the <code>k3d-</code> prefix</strong> that k3d adds to all resources it creates)</li>
<li><codeclass="highlight">k3d cluster createnewcluster--registry-usek3d-myregistry.localhost:12345</code> (make sure you use the <strong><code>k3d-</code> prefix</strong> here) creates a new cluster set up to use that registry</li>
<li><ahref="#testing-your-registry">Test your registry</a></li>
</ol>
<h3id="using-your-own-not-k3d-managed-local-registry">Using your own (not k3d-managed) local registry<aclass="headerlink"href="#using-your-own-not-k3d-managed-local-registry"title="Permanent link">¶</a></h3>
<p>These commands will start your registry container with name and port (on your host) <code>registry.localhost:12345</code>. In order to push to this registry, you will need to make it accessible as described in the next section.<br/>
Once your registry is up and running, we will need to add it to your <code>registries.yaml</code> configuration file.<br/>
Finally, you have to connect the registry network to the k3d cluster network: <codeclass="highlight">docker<spanclass="w"></span>network<spanclass="w"></span>connect<spanclass="w"></span>k3d-k3s-default<spanclass="w"></span>registry.localhost</code>.<br/>
Finally, you have to connect the registry network to the k3d cluster network: <codeclass="highlight">dockernetworkconnectk3d-k3s-defaultregistry.localhost</code>.<br/>
And then you can <ahref="#testing-your-registry">test your local registry</a>.</p>
</details>
<h3id="pushing-to-your-local-registry-address">Pushing to your local registry address<aclass="headerlink"href="#pushing-to-your-local-registry-address"title="Permanent link">¶</a></h3>
@ -1658,12 +1641,12 @@ Things would be basically the same for checking an external registry, but some a
<p><strong>Note</strong>: as per the explanation in the <ahref="#preface-referencing-local-registries">preface</a>, you could replace <code>k3d-registry.localhost:12345</code> with <code>localhost:12345</code> in the <code>docker tag</code> and <code>docker push</code> commands below (but not in the <code>kubectl</code> part!)</p>
<li>Pull the alpine image: <codeclass="highlight">docker<spanclass="w"></span>pull<spanclass="w"></span>alpine:latest</code></li>
<li>re-tag it to reference your newly created registry: <codeclass="highlight">docker<spanclass="w"></span>tag<spanclass="w"></span>alpine:latest<spanclass="w"></span>k3d-registry.localhost:12345/testimage:local</code></li>
<li>Use kubectl to create a new pod in your cluster using that image to see, if the cluster can pull from the new registry: <codeclass="highlight">kubectl<spanclass="w"></span>run<spanclass="w"></span>--image<spanclass="w"></span>k3d-registry.localhost:12345/testimage:local<spanclass="w"></span>testimage<spanclass="w"></span>--command<spanclass="w"></span>--<spanclass="w"></span>tail<spanclass="w"></span>-f<spanclass="w"></span>/dev/null</code><ul>
<li>Pull the alpine image: <codeclass="highlight">dockerpullalpine:latest</code></li>
<li>re-tag it to reference your newly created registry: <codeclass="highlight">docker tag alpine:latestk3d-registry.localhost:12345/testimage:local</code></li>
<li>Use kubectl to create a new pod in your cluster using that image to see, if the cluster can pull from the new registry: <codeclass="highlight">kubectlrun--imagek3d-registry.localhost:12345/testimage:localtestimage--command--tail-f/dev/null</code><ul>
<li>(creates a container that will not do anything but keep on running)</li>
<divclass="highlight"><pre><span></span><code>k3d<spanclass="w"></span>registry<spanclass="w"></span>create<spanclass="w"></span>docker-io<spanclass="w"></span><spanclass="sb">`</span><spanclass="c1"># Create a registry named k3d-docker-io` \</span>
<spanclass="w"></span>-p<spanclass="w"></span><spanclass="m">5000</span><spanclass="w"></span><spanclass="sb">`</span><spanclass="c1"># listening on local host port 5000` \ </span>
<spanclass="w"></span>--proxy-remote-url<spanclass="w"></span>https://registry-1.docker.io<spanclass="w"></span><spanclass="sb">`</span><spanclass="c1"># let it mirror the Docker Hub registry` \</span>
<spanclass="w"></span>-v<spanclass="w"></span>~/.local/share/docker-io-registry:/var/lib/registry<spanclass="w"></span><spanclass="sb">`</span><spanclass="c1"># also persist the downloaded images on the device outside the container`</span>
<divclass="highlight"><pre><span></span><code>k3dregistrycreatedocker-io<spanclass="sb">`</span><spanclass="c1"># Create a registry named k3d-docker-io` \</span>
-p<spanclass="m">5000</span><spanclass="sb">`</span><spanclass="c1"># listening on local host port 5000` \ </span>
--proxy-remote-urlhttps://registry-1.docker.io<spanclass="sb">`</span><spanclass="c1"># let it mirror the Docker Hub registry` \</span>
-v~/.local/share/docker-io-registry:/var/lib/registry<spanclass="sb">`</span><spanclass="c1"># also persist the downloaded images on the device outside the container`</span>
<spanclass="w"></span><spanclass="nt">name</span><spanclass="p">:</span><spanclass="w"></span><spanclass="l l-Scalar l-Scalar-Plain">docker-io</span><spanclass="w"></span><spanclass="c1"># name of the registry container</span>
<spanclass="w"></span><spanclass="p p-Indicator">-</span><spanclass="w"></span><spanclass="l l-Scalar l-Scalar-Plain">/tmp/reg:/var/lib/registry</span><spanclass="w"></span><spanclass="c1"># persist data locally in /tmp/reg</span>
<spanclass="w"></span><spanclass="nt">config</span><spanclass="p">:</span><spanclass="w"></span><spanclass="p p-Indicator">|</span><spanclass="w"></span><spanclass="c1"># tell K3s to use this registry when pulling from DockerHub</span>
<spanclass="w"></span><spanclass="nt">name</span><spanclass="p">:</span><spanclass="w"></span><spanclass="l l-Scalar l-Scalar-Plain">docker-io</span><spanclass="w"></span><spanclass="c1"># name of the registry container</span><spanclass="w"></span>
<spanclass="w"></span><spanclass="p p-Indicator">-</span><spanclass="w"></span><spanclass="l l-Scalar l-Scalar-Plain">/tmp/reg:/var/lib/registry</span><spanclass="w"></span><spanclass="c1"># persist data locally in /tmp/reg</span><spanclass="w"></span>
<spanclass="w"></span><spanclass="nt">config</span><spanclass="p">:</span><spanclass="w"></span><spanclass="p p-Indicator">|</span><spanclass="w"></span><spanclass="c1"># tell K3s to use this registry when pulling from DockerHub</span><spanclass="w"></span>
<scriptid="__config"type="application/json">{"base":"../..","features":["navigation.top","search.suggest","search.highlight","navigation.expand","navigation.tabs"],"search":"../../assets/javascripts/workers/search.db81ec45.min.js","translations":{"clipboard.copied":"Copied to clipboard","clipboard.copy":"Copy to clipboard","search.result.more.one":"1 more on this page","search.result.more.other":"# more on this page","search.result.none":"No matching documents","search.result.one":"1 matching document","search.result.other":"# matching documents","search.result.placeholder":"Type to start searching","search.result.term.missing":"Missing","select.version":"Select version"},"version":{"provider":"mike"}}</script>
<scriptid="__config"type="application/json">{"base":"../..","features":["navigation.top","search.suggest","search.highlight","navigation.expand","navigation.tabs"],"search":"../../assets/javascripts/workers/search.b97dbffb.min.js","translations":{"clipboard.copied":"Copied to clipboard","clipboard.copy":"Copy to clipboard","search.config.lang":"en","search.config.pipeline":"trimmer, stopWordFilter","search.config.separator":"[\\s\\-]+","search.placeholder":"Search","search.result.more.one":"1 more on this page","search.result.more.other":"# more on this page","search.result.none":"No matching documents","search.result.one":"1 matching document","search.result.other":"# matching documents","search.result.placeholder":"Type to start searching","search.result.term.missing":"Missing","select.version.title":"Select version"},"version":{"provider":"mike"}}</script>