podman-desktop/blog/rss.xml
github-actions[bot] 50c673048e deploy: 194f1ed785
2023-11-22 15:11:51 +00:00

1885 lines
No EOL
342 KiB
XML
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/">
<channel>
<title>Podman Desktop Blog</title>
<link>https://podman-desktop.io/blog</link>
<description>Podman Desktop Blog</description>
<lastBuildDate>Fri, 03 Nov 2023 00:00:00 GMT</lastBuildDate>
<docs>https://validator.w3.org/feed/docs/rss2.html</docs>
<generator>https://github.com/jpmonette/feed</generator>
<language>en</language>
<copyright>Copyright © 2023 Podman Desktop</copyright>
<item>
<title><![CDATA[Release Notes - Podman Desktop 1.5]]></title>
<link>https://podman-desktop.io/blog/podman-desktop-release-1.5</link>
<guid>https://podman-desktop.io/blog/podman-desktop-release-1.5</guid>
<pubDate>Fri, 03 Nov 2023 00:00:00 GMT</pubDate>
<description><![CDATA[Podman Desktop 1.5 has been released!]]></description>
<content:encoded><![CDATA[<p>Podman Desktop 1.5 Release! 🎉</p>
<p>With this release of Podman Desktop, we're introducing <strong>a new onboarding feature</strong> that we hope will earn your 🦭 seal of approval! But wait... there's so much more!</p>
<ul>
<li><strong>Onboarding</strong>: Guided setup and configuration of <strong>Podman</strong> and <strong>Compose</strong></li>
<li><strong>Podman 4.7.2</strong>: <a href="https://github.com/containers/podman/releases" target="_blank" rel="noopener noreferrer">Podman 4.7.2</a> is now included in Windows and Mac installers</li>
<li><strong>Command Palette</strong>: Gain easy access to various commands via a new keyboard-driven command palette</li>
<li><strong>Expanded "Summary" tab for Kubernetes pods</strong>: Go deep with extended details on Kubernetes pods in the pod "Summary" tab</li>
<li><strong>Environment file support</strong>: Chart out environment variables for new containers to access on creation</li>
<li><strong>Enhancements to the Settings area</strong>: Get your bearings with improved Docker compatibility mode controls</li>
<li><strong>Improved user experience for state changes</strong>: No more dead reckoning on container state with improved visual indication of status</li>
<li><strong>Extension API improvements</strong>: A boatload of improvements to the extension API enabling more goodness from 🦭 Podman Desktop's extensions</li>
</ul>
<p>Podman Desktop 1.5 is now available. <a href="https://podman-desktop.io/downloads">Click here to download it</a>!</p>
<p><img loading="lazy" alt="Podman-desktop-1-5-hero" src="https://podman-desktop.io/assets/images/onboarding-selkies-3ddb7cb6ee2cf9abed002b01f63b1822.png" width="1920" height="1080" class="img_SS3x"></p>
<hr>
<h2 class="anchor anchorWithStickyNavbar_JmGV" id="release-details">Release Details<a href="https://podman-desktop.io/blog/podman-desktop-release-1.5#release-details" class="hash-link" aria-label="Direct link to Release Details" title="Direct link to Release Details"></a></h2>
<h3 class="anchor anchorWithStickyNavbar_JmGV" id="onboarding">Onboarding<a href="https://podman-desktop.io/blog/podman-desktop-release-1.5#onboarding" class="hash-link" aria-label="Direct link to Onboarding" title="Direct link to Onboarding"></a></h3>
<p>We are introducing a new feature providing guided flows for the initial setup of specific 🦭 Podman Desktop extensions. Release 1.5 features two new onboarding flows: Podman and Compose.</p>
<p>To start the Podman onboarding flow, you can start from the dashboard notification by clicking the "Set up" button:
<img loading="lazy" src="https://user-images.githubusercontent.com/799683/280362279-598cc052-5ea4-4c31-849c-da9bbbcc3e42.png" alt="podman-onboarding-start" class="img_SS3x">
<img loading="lazy" src="https://user-images.githubusercontent.com/799683/280363859-f35b85f8-1dd4-4b7f-a995-25fe5d1ccced.png" alt="podman-onboarding" class="img_SS3x"></p>
<p>Visit <strong><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="gear" class="svg-inline--fa fa-gear fa-lg" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path fill="currentColor" d="M495.9 166.6c3.2 8.7 .5 18.4-6.4 24.6l-43.3 39.4c1.1 8.3 1.7 16.8 1.7 25.4s-.6 17.1-1.7 25.4l43.3 39.4c6.9 6.2 9.6 15.9 6.4 24.6c-4.4 11.9-9.7 23.3-15.8 34.3l-4.7 8.1c-6.6 11-14 21.4-22.1 31.2c-5.9 7.2-15.7 9.6-24.5 6.8l-55.7-17.7c-13.4 10.3-28.2 18.9-44 25.4l-12.5 57.1c-2 9.1-9 16.3-18.2 17.8c-13.8 2.3-28 3.5-42.5 3.5s-28.7-1.2-42.5-3.5c-9.2-1.5-16.2-8.7-18.2-17.8l-12.5-57.1c-15.8-6.5-30.6-15.1-44-25.4L83.1 425.9c-8.8 2.8-18.6 .3-24.5-6.8c-8.1-9.8-15.5-20.2-22.1-31.2l-4.7-8.1c-6.1-11-11.4-22.4-15.8-34.3c-3.2-8.7-.5-18.4 6.4-24.6l43.3-39.4C64.6 273.1 64 264.6 64 256s.6-17.1 1.7-25.4L22.4 191.2c-6.9-6.2-9.6-15.9-6.4-24.6c4.4-11.9 9.7-23.3 15.8-34.3l4.7-8.1c6.6-11 14-21.4 22.1-31.2c5.9-7.2 15.7-9.6 24.5-6.8l55.7 17.7c13.4-10.3 28.2-18.9 44-25.4l12.5-57.1c2-9.1 9-16.3 18.2-17.8C227.3 1.2 241.5 0 256 0s28.7 1.2 42.5 3.5c9.2 1.5 16.2 8.7 18.2 17.8l12.5 57.1c15.8 6.5 30.6 15.1 44 25.4l55.7-17.7c8.8-2.8 18.6-.3 24.5 6.8c8.1 9.8 15.5 20.2 22.1 31.2l4.7 8.1c6.1 11 11.4 22.4 15.8 34.3zM256 336a80 80 0 1 0 0-160 80 80 0 1 0 0 160z"></path></svg>Settings &gt; Resources</strong> screen and click the Compose "Setup ..." button in order to start Compose onboarding:
<img loading="lazy" src="https://user-images.githubusercontent.com/799683/280276847-ca0558ab-70ad-48cc-8dd5-67e3eb465a62.png" alt="compose-onboarding-start" class="img_SS3x">
<img loading="lazy" src="https://user-images.githubusercontent.com/799683/280277936-77ba0fb2-5cb0-41de-a7cf-1a3d6400fd89.png" alt="compose-onboarding" class="img_SS3x"></p>
<h3 class="anchor anchorWithStickyNavbar_JmGV" id="command-palette">Command Palette<a href="https://podman-desktop.io/blog/podman-desktop-release-1.5#command-palette" class="hash-link" aria-label="Direct link to Command Palette" title="Direct link to Command Palette"></a></h3>
<p>A new, search-driven command palette is now available to enable quick access to various commands available across 🦭 Podman Desktop. You can try this new tool out by hitting the F1 key. <a href="https://github.com/containers/podman-desktop/pull/4081" target="_blank" rel="noopener noreferrer">#4081</a> &amp;&amp; <a href="https://github.com/containers/podman-desktop/pull/3979" target="_blank" rel="noopener noreferrer">#3979</a></p>
<div style="width:100%;height:100%"></div>
<h3 class="anchor anchorWithStickyNavbar_JmGV" id="expanded-summary-tab-for-kubernetes-pods">Expanded "Summary" tab for Kubernetes pods<a href="https://podman-desktop.io/blog/podman-desktop-release-1.5#expanded-summary-tab-for-kubernetes-pods" class="hash-link" aria-label="Direct link to Expanded &quot;Summary&quot; tab for Kubernetes pods" title="Direct link to Expanded &quot;Summary&quot; tab for Kubernetes pods"></a></h3>
<p>Kubernetes pods now offer a more comprehensive set of information under the "Summary" tab, including networking, volumes, environment variables, and other key metadata.</p>
<div style="width:100%;height:100%"></div>
<h3 class="anchor anchorWithStickyNavbar_JmGV" id="environment-file-support">Environment file support<a href="https://podman-desktop.io/blog/podman-desktop-release-1.5#environment-file-support" class="hash-link" aria-label="Direct link to Environment file support" title="Direct link to Environment file support"></a></h3>
<p>When creating a container from the Images list, there's now an option to provide an environment file to set env variables for the new container. <a href="https://github.com/containers/podman-desktop/pull/4026" target="_blank" rel="noopener noreferrer">#4026</a> &amp;&amp; <a href="https://github.com/containers/podman-desktop/pull/4025" target="_blank" rel="noopener noreferrer">#4025</a></p>
<h3 class="anchor anchorWithStickyNavbar_JmGV" id="enhancements-to-the-settings-area">Enhancements to the Settings area<a href="https://podman-desktop.io/blog/podman-desktop-release-1.5#enhancements-to-the-settings-area" class="hash-link" aria-label="Direct link to Enhancements to the Settings area" title="Direct link to Enhancements to the Settings area"></a></h3>
<p>The user experience for enabling or disabling Docker compatibility is improved, with a new entry in the <strong><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="gear" class="svg-inline--fa fa-gear fa-lg" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path fill="currentColor" d="M495.9 166.6c3.2 8.7 .5 18.4-6.4 24.6l-43.3 39.4c1.1 8.3 1.7 16.8 1.7 25.4s-.6 17.1-1.7 25.4l43.3 39.4c6.9 6.2 9.6 15.9 6.4 24.6c-4.4 11.9-9.7 23.3-15.8 34.3l-4.7 8.1c-6.6 11-14 21.4-22.1 31.2c-5.9 7.2-15.7 9.6-24.5 6.8l-55.7-17.7c-13.4 10.3-28.2 18.9-44 25.4l-12.5 57.1c-2 9.1-9 16.3-18.2 17.8c-13.8 2.3-28 3.5-42.5 3.5s-28.7-1.2-42.5-3.5c-9.2-1.5-16.2-8.7-18.2-17.8l-12.5-57.1c-15.8-6.5-30.6-15.1-44-25.4L83.1 425.9c-8.8 2.8-18.6 .3-24.5-6.8c-8.1-9.8-15.5-20.2-22.1-31.2l-4.7-8.1c-6.1-11-11.4-22.4-15.8-34.3c-3.2-8.7-.5-18.4 6.4-24.6l43.3-39.4C64.6 273.1 64 264.6 64 256s.6-17.1 1.7-25.4L22.4 191.2c-6.9-6.2-9.6-15.9-6.4-24.6c4.4-11.9 9.7-23.3 15.8-34.3l4.7-8.1c6.6-11 14-21.4 22.1-31.2c5.9-7.2 15.7-9.6 24.5-6.8l55.7 17.7c13.4-10.3 28.2-18.9 44-25.4l12.5-57.1c2-9.1 9-16.3 18.2-17.8C227.3 1.2 241.5 0 256 0s28.7 1.2 42.5 3.5c9.2 1.5 16.2 8.7 18.2 17.8l12.5 57.1c15.8 6.5 30.6 15.1 44 25.4l55.7-17.7c8.8-2.8 18.6-.3 24.5 6.8c8.1 9.8 15.5 20.2 22.1 31.2l4.7 8.1c6.1 11 11.4 22.4 15.8 34.3zM256 336a80 80 0 1 0 0-160 80 80 0 1 0 0 160z"></path></svg>Settings &gt; Preferences</strong> screen that includes contextual guidance. <a href="https://github.com/containers/podman-desktop/pull/4093" target="_blank" rel="noopener noreferrer">#4093</a></p>
<div style="width:100%;height:100%"></div>
<h3 class="anchor anchorWithStickyNavbar_JmGV" id="improved-user-experience-for-state-changes">Improved user experience for state changes<a href="https://podman-desktop.io/blog/podman-desktop-release-1.5#improved-user-experience-for-state-changes" class="hash-link" aria-label="Direct link to Improved user experience for state changes" title="Direct link to Improved user experience for state changes"></a></h3>
<p>The user experience around state changes for containers, pods, and other objects in the UI is improved, with clear status messages and improved animated visual indicator of state changes. <a href="https://github.com/containers/podman-desktop/pull/4056" target="_blank" rel="noopener noreferrer">#4056</a></p>
<div style="width:100%;height:100%"></div>
<div style="width:100%;height:100%"></div>
<h3 class="anchor anchorWithStickyNavbar_JmGV" id="extension-api-improvements">Extension API improvements<a href="https://podman-desktop.io/blog/podman-desktop-release-1.5#extension-api-improvements" class="hash-link" aria-label="Direct link to Extension API improvements" title="Direct link to Extension API improvements"></a></h3>
<p>The 🦭 Podman Desktop extension API received many improvements, including:</p>
<ul>
<li>
<p>In addition to pushing and listing image from an extension, it's now possible to pull images from a 🦭 Podman Desktop extension <a href="https://github.com/containers/podman-desktop/pull/4155" target="_blank" rel="noopener noreferrer">#4155</a></p>
</li>
<li>
<p>The 🦭 Podman Desktop extension API has been enhanced with both the ability to list images &amp; networks and the ability to create containers &amp; networks. <a href="https://github.com/containers/podman-desktop/pull/4172" target="_blank" rel="noopener noreferrer">#4172</a></p>
</li>
<li>
<p>🦭 Podman Desktop extensions now have a consistent way to run administrative tasks. <a href="https://github.com/containers/podman-desktop/pull/4049" target="_blank" rel="noopener noreferrer">#4049</a></p>
</li>
<li>
<p>Extensions now have the ability to register a custom Kubernetes config generator. <a href="https://github.com/containers/podman-desktop/pull/3970" target="_blank" rel="noopener noreferrer">#3970</a></p>
</li>
<li>
<p>The ability of extensions to add commands to UI menus has been extended; previously for action menus it was only available in the Image list screen. It is now possible for extensions to add commands to the action menus of items listed on the Containers list screen as well. <a href="https://github.com/containers/podman-desktop/pull/3947" target="_blank" rel="noopener noreferrer">#3947</a> &amp; <a href="https://github.com/containers/podman-desktop/pull/3963" target="_blank" rel="noopener noreferrer">#3963</a></p>
</li>
<li>
<p>Extensions have gained the ability to contribute menu items in the UI based on specific conditions. <a href="https://github.com/containers/podman-desktop/pull/3959" target="_blank" rel="noopener noreferrer">#3959</a></p>
</li>
<li>
<p>Enhanced logic for displaying or hiding properties listed under the <strong><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="gear" class="svg-inline--fa fa-gear fa-lg" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path fill="currentColor" d="M495.9 166.6c3.2 8.7 .5 18.4-6.4 24.6l-43.3 39.4c1.1 8.3 1.7 16.8 1.7 25.4s-.6 17.1-1.7 25.4l43.3 39.4c6.9 6.2 9.6 15.9 6.4 24.6c-4.4 11.9-9.7 23.3-15.8 34.3l-4.7 8.1c-6.6 11-14 21.4-22.1 31.2c-5.9 7.2-15.7 9.6-24.5 6.8l-55.7-17.7c-13.4 10.3-28.2 18.9-44 25.4l-12.5 57.1c-2 9.1-9 16.3-18.2 17.8c-13.8 2.3-28 3.5-42.5 3.5s-28.7-1.2-42.5-3.5c-9.2-1.5-16.2-8.7-18.2-17.8l-12.5-57.1c-15.8-6.5-30.6-15.1-44-25.4L83.1 425.9c-8.8 2.8-18.6 .3-24.5-6.8c-8.1-9.8-15.5-20.2-22.1-31.2l-4.7-8.1c-6.1-11-11.4-22.4-15.8-34.3c-3.2-8.7-.5-18.4 6.4-24.6l43.3-39.4C64.6 273.1 64 264.6 64 256s.6-17.1 1.7-25.4L22.4 191.2c-6.9-6.2-9.6-15.9-6.4-24.6c4.4-11.9 9.7-23.3 15.8-34.3l4.7-8.1c6.6-11 14-21.4 22.1-31.2c5.9-7.2 15.7-9.6 24.5-6.8l55.7 17.7c13.4-10.3 28.2-18.9 44-25.4l12.5-57.1c2-9.1 9-16.3 18.2-17.8C227.3 1.2 241.5 0 256 0s28.7 1.2 42.5 3.5c9.2 1.5 16.2 8.7 18.2 17.8l12.5 57.1c15.8 6.5 30.6 15.1 44 25.4l55.7-17.7c8.8-2.8 18.6-.3 24.5 6.8c8.1 9.8 15.5 20.2 22.1 31.2l4.7 8.1c6.1 11 11.4 22.4 15.8 34.3zM256 336a80 80 0 1 0 0-160 80 80 0 1 0 0 160z"></path></svg>Settings &gt; Preferences</strong> screens is now available. <a href="https://github.com/containers/podman-desktop/pull/4159" target="_blank" rel="noopener noreferrer">#4159</a></p>
</li>
</ul>
<div style="width:100%;height:100%"></div>
<hr>
<h2 class="anchor anchorWithStickyNavbar_JmGV" id="other-notable-enhancements">Other Notable Enhancements<a href="https://podman-desktop.io/blog/podman-desktop-release-1.5#other-notable-enhancements" class="hash-link" aria-label="Direct link to Other Notable Enhancements" title="Direct link to Other Notable Enhancements"></a></h2>
<ul>
<li>The progress of loading an image into Kind is now visible as a task in the task manager. <a href="https://github.com/containers/podman-desktop/pull/4061" target="_blank" rel="noopener noreferrer">#4061</a></li>
</ul>
<p><img loading="lazy" src="https://user-images.githubusercontent.com/42176370/270154775-eb7007b4-fd0e-4287-be9e-40ffc412de35.png" alt="kind-progress-task" class="img_SS3x"></p>
<ul>
<li>It's now possible to start a new Podman machine right after creation, or you can create it and wait to start it later. It's up to you! <a href="https://github.com/containers/podman-desktop/pull/4046" target="_blank" rel="noopener noreferrer">#4046</a></li>
</ul>
<p><img loading="lazy" src="https://user-images.githubusercontent.com/49404737/269941187-f4768833-ecfc-4d0b-8acf-d4afedb428d9.png" alt="podman-start-now-or-later" class="img_SS3x"></p>
<ul>
<li>The Podman machine and Kubernetes provider creation forms have an updated look &amp; feel consisted with other forms in the user interface, along with minor bug fixes. <a href="https://github.com/containers/podman-desktop/pull/4317" target="_blank" rel="noopener noreferrer">#4317</a></li>
</ul>
<p><img loading="lazy" src="https://user-images.githubusercontent.com/19958075/274694157-fe89f3bc-e5b8-4735-96e9-669fe52c7a41.png" alt="Updated provider creation forms" class="img_SS3x"></p>
<ul>
<li>The empty screen message shown when a search filter results in no matches now provides a message specific to filter matching, including the specific filter terms and an explicit button for clearing the filter. Previously, the screen displayed a generic message about how to create new objects of the type displayed on the screen, which led to some confusion about the status of the system. <a href="https://github.com/containers/podman-desktop/pull/3988" target="_blank" rel="noopener noreferrer">#3988</a></li>
</ul>
<div style="width:100%;height:100%"></div>
<ul>
<li>
<p>New support for adding spin animations to icons is now available. <a href="https://github.com/containers/podman-desktop/pull/4188" target="_blank" rel="noopener noreferrer">#4188</a></p>
</li>
<li>
<p>There is a new indeterminate progress bar type available for the task manager; this is meant for providing limited status for actions whose APIs do not provide detailed status information. <a href="https://github.com/containers/podman-desktop/pull/4016" target="_blank" rel="noopener noreferrer">#4016</a></p>
</li>
<li>
<p>For authenticating as admin to perform administrative tasks, 🦭 Podman Desktop now provides touchID support for macOS. <a href="https://github.com/containers/podman-desktop/pull/4050" target="_blank" rel="noopener noreferrer">#4050</a></p>
</li>
</ul>
<p><img loading="lazy" src="https://user-images.githubusercontent.com/436777/248588015-f08115bd-d211-43ad-bddd-286d7b3a7056.png" alt="touchID-support" class="img_SS3x"></p>
<div style="width:100%;height:100%"></div>
<ul>
<li>
<p>Support for connecting to interactive terminals for containers via tty was added. <a href="https://github.com/containers/podman-desktop/pull/3900" target="_blank" rel="noopener noreferrer">#3900</a></p>
</li>
<li>
<p>It's now more clear which container/pod providers will autostart when 🦭 Podman Desktop starts. Previously autostart had both a global and a per-provider setting. It has been simplified by removing the global setting. <a href="https://github.com/containers/podman-desktop/pull/3840" target="_blank" rel="noopener noreferrer">#3840</a></p>
</li>
<li>
<p>The "Working with containers" section of the documentation has been reworked and improved. <a href="https://github.com/containers/podman-desktop/pull/3951" target="_blank" rel="noopener noreferrer">#3951</a></p>
</li>
</ul>
<hr>
<h2 class="anchor anchorWithStickyNavbar_JmGV" id="notable-bug-fixes">Notable Bug Fixes<a href="https://podman-desktop.io/blog/podman-desktop-release-1.5#notable-bug-fixes" class="hash-link" aria-label="Direct link to Notable Bug Fixes" title="Direct link to Notable Bug Fixes"></a></h2>
<ul>
<li>
<p>The disable registry command was not blocking subsequent pulls from disabled registries. This has been corrected. <a href="https://github.com/containers/podman-desktop/pull/4183" target="_blank" rel="noopener noreferrer">#4183</a></p>
</li>
<li>
<p>Some users behind network proxies were unable to complete workflow involving the download of online resources. The mechanism for fetching these resources has been fixed to be proxy compatible to address this issue. <a href="https://github.com/containers/podman-desktop/pull/3994" target="_blank" rel="noopener noreferrer">#3994</a></p>
</li>
<li>
<p>The status of pods running in Kubernetes that are undergoing the deletion process is now accurately reflected in the 🦭 Podman Desktop UI. <a href="https://github.com/containers/podman-desktop/pull/3877" target="_blank" rel="noopener noreferrer">#3877</a></p>
</li>
<li>
<p>The image details page always listed the image as being "not used" even when it was. This has been corrected. <a href="https://github.com/containers/podman-desktop/pull/3985" target="_blank" rel="noopener noreferrer">#3985</a></p>
</li>
<li>
<p>Previously, deleting a specific image tag would cause all tags with the same Image ID to be deleted. This has been fixed so only the selected image tag will be deleted. <a href="https://github.com/containers/podman-desktop/pull/3837" target="_blank" rel="noopener noreferrer">#3837</a></p>
</li>
<li>
<p>Could not view the pod details for some remote Kubernetes cluster pods due to an encoding error. <a href="https://github.com/containers/podman-desktop/pull/4371" target="_blank" rel="noopener noreferrer">#4371</a></p>
</li>
<li>
<p>Error logs were being tracked separately from the actions they applied to. This has been addressed for kind cluster creation failure <a href="https://github.com/containers/podman-desktop/pull/4427" target="_blank" rel="noopener noreferrer">#4427</a> and Compose installation failure <a href="https://github.com/containers/podman-desktop/pull/4407" target="_blank" rel="noopener noreferrer">#4407</a>.</p>
</li>
<li>
<p>For Linux users, 🦭 Podman Desktop previously did not appear under the "Development" menu when installed via Flatpak; it appeared under "Utilities." 🦭 Podman Desktop now appears under the "Development" menu. <a href="https://github.com/containers/podman-desktop/pull/3911" target="_blank" rel="noopener noreferrer">#3911</a></p>
</li>
<li>
<p>Podman Machine names are no longer prefixed with the "Podman Machine" string. <a href="https://github.com/containers/podman-desktop/pull/3878" target="_blank" rel="noopener noreferrer">#3878</a></p>
</li>
</ul>
<p><img loading="lazy" src="https://user-images.githubusercontent.com/19958075/267378447-aafdfbd7-f005-4b94-8626-9e11eec61b95.png" alt="touchID-support" class="img_SS3x"></p>
<ul>
<li>
<p>The initial action state of pods and containers was being displayed as "STARTING" regardless of actual state; this has been corrected. <a href="https://github.com/containers/podman-desktop/pull/3889" target="_blank" rel="noopener noreferrer">#3889</a></p>
</li>
<li>
<p>Resizing the application window no longer makes the last lines of a container's terminal invisible. <a href="https://github.com/containers/podman-desktop/pull/3993" target="_blank" rel="noopener noreferrer">#3993</a></p>
</li>
<li>
<p>An issue with incorrect terminal behavior in response to long lines in the terminal attached to a container has been resolved. <a href="https://github.com/containers/podman-desktop/pull/3955" target="_blank" rel="noopener noreferrer">#3955</a></p>
</li>
<li>
<p>A spacing issue on the run image form has been corrected. [#4089]<a href="https://github.com/containers/podman-desktop/pull/4089" target="_blank" rel="noopener noreferrer">https://github.com/containers/podman-desktop/pull/4089</a></p>
</li>
<li>
<p>The "podify" icon &amp; button on the Containers list was unusually large in release 1.4. That regression has been corrected in this release. <a href="https://github.com/containers/podman-desktop/pull/4122" target="_blank" rel="noopener noreferrer">#4122</a></p>
</li>
<li>
<p>An error in the instructions for Windows users on migrating from Docker has been corrected. <a href="https://github.com/containers/podman-desktop/pull/4157" target="_blank" rel="noopener noreferrer">#4157</a></p>
</li>
</ul>
<hr>
<h2 class="anchor anchorWithStickyNavbar_JmGV" id="community-thank-you">Community Thank You<a href="https://podman-desktop.io/blog/podman-desktop-release-1.5#community-thank-you" class="hash-link" aria-label="Direct link to Community Thank You" title="Direct link to Community Thank You"></a></h2>
<p>🎉 Wed like to say a big thank you to everyone who helped to make 🦭 Podman Desktop even better. In this
release we received pull requests from the following people:</p>
<ul>
<li>
<p><a href="https://github.com/afbjorklund" target="_blank" rel="noopener noreferrer">afbjorklund</a> in <a href="https://github.com/containers/podman-desktop/pull/4373" target="_blank" rel="noopener noreferrer">#4373 - docs: fix broken links and add lima onboarding</a>, <a href="https://github.com/containers/podman-desktop/pull/4372" target="_blank" rel="noopener noreferrer">#4372 - docs: clear up lima column on containers page</a>, <a href="https://github.com/containers/podman-desktop/pull/4091" target="_blank" rel="noopener noreferrer">#4091 - fix: avoid errors with unexpected JSON input</a>, <a href="https://github.com/containers/podman-desktop/pull/4098" target="_blank" rel="noopener noreferrer">#4098 - docs: Lima onboarding details</a>, and <a href="https://github.com/containers/podman-desktop/pull/3854" target="_blank" rel="noopener noreferrer">#3854 - fix: check if machine init rootful flag supported</a></p>
</li>
<li>
<p><a href="https://github.com/axel7083" target="_blank" rel="noopener noreferrer">axel7083</a> in <a href="https://github.com/containers/podman-desktop/pull/4061" target="_blank" rel="noopener noreferrer">#4061 - feat: adding task progress for kind</a>, <a href="https://github.com/containers/podman-desktop/pull/3970" target="_blank" rel="noopener noreferrer">#3970 - feat: extension can register custom kube generator</a>, <a href="https://github.com/containers/podman-desktop/pull/3959" target="_blank" rel="noopener noreferrer">#3959 - feat: add when property to extensions menus</a>, <a href="https://github.com/containers/podman-desktop/pull/4016" target="_blank" rel="noopener noreferrer">#4016 - feat: indeterminate progress bar</a>, <a href="https://github.com/containers/podman-desktop/pull/3963" target="_blank" rel="noopener noreferrer">#3963 - fix: ContainerList propagating containers in ComposeActions and PodActions</a>, and <a href="https://github.com/containers/podman-desktop/pull/3947" target="_blank" rel="noopener noreferrer">#3947 - feat: extend menus capabilities</a></p>
</li>
<li>
<p><a href="https://github.com/ayushrakesh" target="_blank" rel="noopener noreferrer">ayushrakesh</a> in <a href="https://github.com/containers/podman-desktop/pull/4415#" target="_blank" rel="noopener noreferrer">#4415 - Update README.md</a></p>
</li>
<li>
<p><a href="https://github.com/eltociear" target="_blank" rel="noopener noreferrer">eltociear</a> in <a href="https://github.com/containers/podman-desktop/pull/4194" target="_blank" rel="noopener noreferrer">#4194 - Update README.md</a></p>
</li>
<li>
<p><a href="https://github.com/foxydevloper" target="_blank" rel="noopener noreferrer">foxydeveloper</a> in <a href="https://github.com/containers/podman-desktop/pull/4157" target="_blank" rel="noopener noreferrer">#4157 - docs: Correct windows instructions for migrating from docker</a></p>
</li>
<li>
<p><a href="https://github.com/harsh-solanki21" target="_blank" rel="noopener noreferrer">harsh-solanki21</a> in <a href="https://github.com/containers/podman-desktop/pull/4162" target="_blank" rel="noopener noreferrer">#4162 - fix: Removed fullstop from summary</a></p>
</li>
<li>
<p><a href="https://github.com/rahul0x00" target="_blank" rel="noopener noreferrer">rahul0x00</a> in <a href="https://github.com/containers/podman-desktop/pull/4240" target="_blank" rel="noopener noreferrer">#4240 - fix typos in README.md</a></p>
</li>
<li>
<p><a href="https://github.com/shelar1423" target="_blank" rel="noopener noreferrer">shelar1423</a> in <a href="https://github.com/containers/podman-desktop/pull/4221" target="_blank" rel="noopener noreferrer">#4221 - chore: document property setting in EXTENSIONS.md</a></p>
</li>
</ul>
<hr>
<h2 class="anchor anchorWithStickyNavbar_JmGV" id="final-notes">Final notes<a href="https://podman-desktop.io/blog/podman-desktop-release-1.5#final-notes" class="hash-link" aria-label="Direct link to Final notes" title="Direct link to Final notes"></a></h2>
<h3 class="anchor anchorWithStickyNavbar_JmGV" id="known-issues">Known Issues<a href="https://podman-desktop.io/blog/podman-desktop-release-1.5#known-issues" class="hash-link" aria-label="Direct link to Known Issues" title="Direct link to Known Issues"></a></h3>
<p>We have a discussion board topic where we have posted known issues with this release. If you run into problems, please check this list before filing a bug - if we already have an issue open for it, it saves you the time and trouble of filing, and there may be a workaround posted in the issue.</p>
<h4 class="anchor anchorWithStickyNavbar_JmGV" id="known-issues-podman-desktop-152"><a href="https://github.com/containers/podman-desktop/discussions/4635" target="_blank" rel="noopener noreferrer">Known Issues: Podman Desktop 1.5.2</a><a href="https://podman-desktop.io/blog/podman-desktop-release-1.5#known-issues-podman-desktop-152" class="hash-link" aria-label="Direct link to known-issues-podman-desktop-152" title="Direct link to known-issues-podman-desktop-152"></a></h4>
<h3 class="anchor anchorWithStickyNavbar_JmGV" id="fixed-issues">Fixed Issues<a href="https://podman-desktop.io/blog/podman-desktop-release-1.5#fixed-issues" class="hash-link" aria-label="Direct link to Fixed Issues" title="Direct link to Fixed Issues"></a></h3>
<p>The complete list of issues fixed in this release is available <a href="https://github.com/containers/podman-desktop/issues?q=is%3Aclosed+milestone%3A1.5.0" target="_blank" rel="noopener noreferrer">here</a>.</p>
<h3 class="anchor anchorWithStickyNavbar_JmGV" id="where-to-download">Where to Download<a href="https://podman-desktop.io/blog/podman-desktop-release-1.5#where-to-download" class="hash-link" aria-label="Direct link to Where to Download" title="Direct link to Where to Download"></a></h3>
<p>Get the latest release from the <a href="https://podman-desktop.io/downloads">Downloads</a> section of the website and boost your development journey with Podman Desktop. Additionally, visit the <a href="https://github.com/containers/podman-desktop" target="_blank" rel="noopener noreferrer">GitHub repository</a> and see how you can help us make Podman Desktop better.</p>]]></content:encoded>
<category>podman-desktop</category>
<category>release</category>
<category>kubernetes</category>
<category>openshift</category>
<category>onboarding</category>
<category>compose</category>
<category>extensions</category>
<category>settings</category>
</item>
<item>
<title><![CDATA[Release Notes - Podman Desktop 1.4]]></title>
<link>https://podman-desktop.io/blog/podman-desktop-release-1.4</link>
<guid>https://podman-desktop.io/blog/podman-desktop-release-1.4</guid>
<pubDate>Mon, 18 Sep 2023 00:00:00 GMT</pubDate>
<description><![CDATA[Podman Desktop 1.4 has been released!]]></description>
<content:encoded><![CDATA[<p>Podman Desktop 1.4 Release! 🎉</p>
<p>This is essentially a bug-fix release to fix various issues in UI, but as usual we also added a few new features.</p>
<ul>
<li><strong>Podman 4.6.2</strong>: Podman 4.6.2 included with Podman Desktop 1.4</li>
<li><strong>Windows Arm64</strong>: Native Windows on Arm64 installers and binaries</li>
<li><strong>Port range mapping</strong>: Start containers and map a range of ports</li>
<li><strong>Terminal UX Improvement</strong>: Persistent terminal sessions when SSH'ing in a container</li>
<li><strong>Volume Creation</strong>: Create volume from the <code>Volumes</code> page</li>
<li><strong>Bash support</strong>: Terminals are now using <code>bash</code> if available.</li>
</ul>
<p>Podman Desktop 1.4 is now available. <a href="https://podman-desktop.io/downloads">Click here to download it</a>!</p>
<p><img loading="lazy" alt="Podman-desktop-1-4-juggling" src="https://podman-desktop.io/assets/images/juggling-bfd34fcfc3b63b29752c5f16a53e36ad.png" width="1920" height="1080" class="img_SS3x"></p>
<hr>
<h2 class="anchor anchorWithStickyNavbar_JmGV" id="release-details">Release Details<a href="https://podman-desktop.io/blog/podman-desktop-release-1.4#release-details" class="hash-link" aria-label="Direct link to Release Details" title="Direct link to Release Details"></a></h2>
<h3 class="anchor anchorWithStickyNavbar_JmGV" id="port-range-mapping-3654">Port range mapping <a href="https://github.com/containers/podman-desktop/pull/3654" target="_blank" rel="noopener noreferrer">#3654</a><a href="https://podman-desktop.io/blog/podman-desktop-release-1.4#port-range-mapping-3654" class="hash-link" aria-label="Direct link to port-range-mapping-3654" title="Direct link to port-range-mapping-3654"></a></h3>
<p>When starting a new container, you can now map a port range between host and container. If the range is not valid between host and container, an error is raised.</p>
<p><img loading="lazy" src="https://user-images.githubusercontent.com/49404737/262927546-da66b67a-0884-40b1-85bd-a9c3ea2f3f9e.gif" alt="Range mapping" class="img_SS3x"></p>
<h3 class="anchor anchorWithStickyNavbar_JmGV" id="terminal-lifetime-3725">Terminal lifetime <a href="https://github.com/containers/podman-desktop/pull/3725" target="_blank" rel="noopener noreferrer">#3725</a><a href="https://podman-desktop.io/blog/podman-desktop-release-1.4#terminal-lifetime-3725" class="hash-link" aria-label="Direct link to terminal-lifetime-3725" title="Direct link to terminal-lifetime-3725"></a></h3>
<p>When a terminal is opened for a container, it can now be reused after you switched to another part of the Podman Desktop UI.</p>
<p><img loading="lazy" alt="terminal lifetime" src="https://podman-desktop.io/assets/images/terminal-dc078da2d12869ee9e148c38afe530da.gif" width="1316" height="879" class="img_SS3x"></p>
<h3 class="anchor anchorWithStickyNavbar_JmGV" id="create-volume-3742">Create volume <a href="https://github.com/containers/podman-desktop/pull/3742" target="_blank" rel="noopener noreferrer">#3742</a><a href="https://podman-desktop.io/blog/podman-desktop-release-1.4#create-volume-3742" class="hash-link" aria-label="Direct link to create-volume-3742" title="Direct link to create-volume-3742"></a></h3>
<p>The Volumes tab now has a Create volume button. The Create volume UI has a single field for the volume name.</p>
<p><img loading="lazy" alt="create volume" src="https://podman-desktop.io/assets/images/create-volume-b826557a9841c4f92311a2b5833ec247.gif" width="1316" height="879" class="img_SS3x"></p>
<h3 class="anchor anchorWithStickyNavbar_JmGV" id="bash-support-3750">bash support <a href="https://github.com/containers/podman-desktop/pull/3750" target="_blank" rel="noopener noreferrer">#3750</a><a href="https://podman-desktop.io/blog/podman-desktop-release-1.4#bash-support-3750" class="hash-link" aria-label="Direct link to bash-support-3750" title="Direct link to bash-support-3750"></a></h3>
<p>When a terminal is opened for a container, if bash is available within the container, it will be used. Otherwise, sh will be used.</p>
<p><img loading="lazy" alt="bash sh" src="https://podman-desktop.io/assets/images/bash-sh-640dea579335def1a54ad3d2fb668a13.gif" width="1316" height="879" class="img_SS3x"></p>
<h3 class="anchor anchorWithStickyNavbar_JmGV" id="notable-bug-fixes">Notable Bug Fixes<a href="https://podman-desktop.io/blog/podman-desktop-release-1.4#notable-bug-fixes" class="hash-link" aria-label="Direct link to Notable Bug Fixes" title="Direct link to Notable Bug Fixes"></a></h3>
<ul>
<li>Reduce API calls when listing containers by @benoitf <a href="https://github.com/containers/podman-desktop/pull/3489" target="_blank" rel="noopener noreferrer">#3489</a></li>
<li>Removing a connection(podman machine) should redirect to previous page by @benoitf <a href="https://github.com/containers/podman-desktop/pull/3576" target="_blank" rel="noopener noreferrer">#3576</a></li>
<li>Enhance error message when image is not there by @benoitf <a href="https://github.com/containers/podman-desktop/pull/3587" target="_blank" rel="noopener noreferrer">#3587</a></li>
<li>Dispose kind install button when extension is deactivated (#3586) by @lstocchi <a href="https://github.com/containers/podman-desktop/pull/3610" target="_blank" rel="noopener noreferrer">#3610</a></li>
<li>Replace backslash/slash on windows when building image (#3465) by @lstocchi <a href="https://github.com/containers/podman-desktop/pull/3618" target="_blank" rel="noopener noreferrer">#3618</a></li>
<li>Handle null value in container command (#3620) by @lstocchi <a href="https://github.com/containers/podman-desktop/pull/3625" target="_blank" rel="noopener noreferrer">#3625</a></li>
<li>Add maximum activation time for extensions by @benoitf <a href="https://github.com/containers/podman-desktop/pull/3446" target="_blank" rel="noopener noreferrer">#3446</a></li>
<li>Handle single non-spread arguments by @benoitf <a href="https://github.com/containers/podman-desktop/pull/3641" target="_blank" rel="noopener noreferrer">#3641</a></li>
<li>Grab usage data of volumes only on-demand by @benoitf <a href="https://github.com/containers/podman-desktop/pull/3635" target="_blank" rel="noopener noreferrer">#3635</a></li>
<li>Add arm64 binaries for Windows by @benoitf <a href="https://github.com/containers/podman-desktop/pull/3643" target="_blank" rel="noopener noreferrer">#3643</a></li>
<li>Include right airgap file for Windows and arm64 by @benoitf <a href="https://github.com/containers/podman-desktop/pull/3651" target="_blank" rel="noopener noreferrer">#3651</a></li>
<li>Redirect to previous page when removing a kubernetes connection by @benoitf <a href="https://github.com/containers/podman-desktop/pull/3650" target="_blank" rel="noopener noreferrer">#3650</a></li>
<li>Support port ranges when starting a container (#3204) by @lstocchi <a href="https://github.com/containers/podman-desktop/pull/3654" target="_blank" rel="noopener noreferrer">#3654</a></li>
<li>Add a strict undefined check to messagebox result (#3692) by @lstocchi <a href="https://github.com/containers/podman-desktop/pull/3699" target="_blank" rel="noopener noreferrer">#3699</a></li>
<li>Only restart if a machine is running by @cdrage <a href="https://github.com/containers/podman-desktop/pull/3491" target="_blank" rel="noopener noreferrer">#3491</a></li>
<li>Session to the terminal is reused by @benoitf <a href="https://github.com/containers/podman-desktop/pull/3725" target="_blank" rel="noopener noreferrer">#3725</a></li>
<li>Disable next button and show try again when onboarding failed (#3616) by @lstocchi <a href="https://github.com/containers/podman-desktop/pull/3711" target="_blank" rel="noopener noreferrer">#3711</a></li>
<li>Add podman in PATH after updating process environment PATH (#3729) by @lstocchi <a href="https://github.com/containers/podman-desktop/pull/3730" target="_blank" rel="noopener noreferrer">#3730</a></li>
<li>Allow to create a volume by @benoitf <a href="https://github.com/containers/podman-desktop/pull/3742" target="_blank" rel="noopener noreferrer">#3742</a></li>
<li>Using bash if available otherwise sh in terminal by @axel7083 <a href="https://github.com/containers/podman-desktop/pull/3750" target="_blank" rel="noopener noreferrer">#3750</a></li>
<li>Allow to embed existing component to onboarding (#3755) by @lstocchi <a href="https://github.com/containers/podman-desktop/pull/3763" target="_blank" rel="noopener noreferrer">#3763</a></li>
<li>Some containers never return logs, do not wait for them by @dgolovin <a href="https://github.com/containers/podman-desktop/pull/3784" target="_blank" rel="noopener noreferrer">#3784</a></li>
<li>Remove cancel button when on final onboarding step (#3771) by @lstocchi <a href="https://github.com/containers/podman-desktop/pull/3802" target="_blank" rel="noopener noreferrer">#3802</a></li>
<li>Onboarding add link micromark for commands by @cdrage <a href="https://github.com/containers/podman-desktop/pull/3747" target="_blank" rel="noopener noreferrer">#3747</a></li>
<li>Mounts can be null when using older podman by @afbjorklund <a href="https://github.com/containers/podman-desktop/pull/3806" target="_blank" rel="noopener noreferrer">#3806</a></li>
<li>Remove redundant step completion check when onboarding gets started by @lstocchi <a href="https://github.com/containers/podman-desktop/pull/3798" target="_blank" rel="noopener noreferrer">#3798</a></li>
<li>Ability to click enter in pull image name input by @deboer-tim <a href="https://github.com/containers/podman-desktop/pull/3850" target="_blank" rel="noopener noreferrer">#3850</a></li>
<li>Set proxy environment variable when launching process by @jeffmaury <a href="https://github.com/containers/podman-desktop/pull/3838" target="_blank" rel="noopener noreferrer">#3838</a></li>
<li>The socket location was moved for new podman by @afbjorklund <a href="https://github.com/containers/podman-desktop/pull/3853" target="_blank" rel="noopener noreferrer">#3853</a></li>
<li>Don't log console errors when activating lima extension by @afbjorklund <a href="https://github.com/containers/podman-desktop/pull/3852" target="_blank" rel="noopener noreferrer">#3852</a></li>
</ul>
<h3 class="anchor anchorWithStickyNavbar_JmGV" id="community-thank-you">Community Thank You<a href="https://podman-desktop.io/blog/podman-desktop-release-1.4#community-thank-you" class="hash-link" aria-label="Direct link to Community Thank You" title="Direct link to Community Thank You"></a></h3>
<p>🎉 Wed like to say a big thank you to everyone who helped to make Podman Desktop even better.</p>
<p>A warm welcome to <a href="https://github.com/tomgoren" target="_blank" rel="noopener noreferrer">@tomgoren</a>, <a href="https://github.com/Julian" target="_blank" rel="noopener noreferrer">@Julian</a>, <a href="https://github.com/Gelob" target="_blank" rel="noopener noreferrer">@Gelob</a> and <a href="https://github.com/cedricclyburn" target="_blank" rel="noopener noreferrer">@cedricclyburn</a> who made their first contribution to the project in this release.</p>
<h3 class="anchor anchorWithStickyNavbar_JmGV" id="final-notes">Final Notes<a href="https://podman-desktop.io/blog/podman-desktop-release-1.4#final-notes" class="hash-link" aria-label="Direct link to Final Notes" title="Direct link to Final Notes"></a></h3>
<p>The complete list of issues fixed in this release is available <a href="https://github.com/containers/podman-desktop/issues?q=is%3Aclosed+milestone%3A1.4.0" target="_blank" rel="noopener noreferrer">here</a>.</p>
<p>Get the latest release from the <a href="https://podman-desktop.io/downloads">Downloads</a> section of the website and boost your development journey with Podman Desktop. Additionally, visit the <a href="https://github.com/containers/podman-desktop" target="_blank" rel="noopener noreferrer">GitHub repository</a> and see how you can help us make Podman Desktop better.</p>]]></content:encoded>
<category>podman-desktop</category>
<category>release</category>
<category>kubernetes</category>
<category>openshift</category>
</item>
<item>
<title><![CDATA[Release Notes - Podman Desktop 1.3]]></title>
<link>https://podman-desktop.io/blog/podman-desktop-release-1.3</link>
<guid>https://podman-desktop.io/blog/podman-desktop-release-1.3</guid>
<pubDate>Wed, 16 Aug 2023 00:00:00 GMT</pubDate>
<description><![CDATA[Podman Desktop 1.3 has been released!]]></description>
<content:encoded><![CDATA[<p>Podman Desktop 1.3 Release! 🎉</p>
<p>This is essentially a bug-fix release to fix various issues in UI, extension engine and featured extensions, but as usual we also added a few new features.</p>
<ul>
<li><strong>Podman 4.6.1</strong>: Podman 4.6.1 included in Windows and Mac installers</li>
<li><strong>Podman user-mode networking support to Windows/WSL</strong>: A new switch `User mode networking' is available when creating Podman machine on Windows for Podman 4.6.0+ to configure podman to work in certain VPN setups and other specialized networking configurations</li>
<li><strong>Compose group new UI elements</strong>: You can now see summary, inspect, deploy to kubernetes, generate kube yaml and view logs</li>
<li><strong>Extension packs and extension dependencies</strong>: Install group of extensions in one click</li>
<li><strong>Resource details page update</strong>: See summary and log for resource</li>
<li><strong>Create Kind cluster form update</strong>: A new <code>Node's container image</code> field can be used to specify the Kubernetes version used for the control-planed</li>
<li><strong>Support Docker Desktop extensions using a backend</strong>: When loading Docker Desktop extension the containers are created in the backend as described in the vm section of extension's descriptor</li>
<li><strong>Podman Initial Onboarding (preview)</strong>: Install and configure podman using included installer</li>
</ul>
<p>Podman Desktop 1.3 is now available. <a href="https://podman-desktop.io/downloads">Click here to download it</a>!</p>
<p><img loading="lazy" alt="Podman-desktop-1-3-bug-swatting" src="https://podman-desktop.io/assets/images/title-bug-swatting-8a5058958e05e545e61c1e5e689335d3.png" width="1920" height="1080" class="img_SS3x"></p>
<hr>
<h2 class="anchor anchorWithStickyNavbar_JmGV" id="release-details">Release Details<a href="https://podman-desktop.io/blog/podman-desktop-release-1.3#release-details" class="hash-link" aria-label="Direct link to Release Details" title="Direct link to Release Details"></a></h2>
<h3 class="anchor anchorWithStickyNavbar_JmGV" id="compose-group-logs-tab-3176">Compose group Logs tab <a href="https://github.com/containers/podman-desktop/pull/3176" target="_blank" rel="noopener noreferrer">#3176</a><a href="https://podman-desktop.io/blog/podman-desktop-release-1.3#compose-group-logs-tab-3176" class="hash-link" aria-label="Direct link to compose-group-logs-tab-3176" title="Direct link to compose-group-logs-tab-3176"></a></h3>
<p>When clicking on the group of containers, you can now view the logs of the entire group of compose containers and don't need to open
log for every component individually.</p>
<p><img loading="lazy" src="https://github.com/containers/podman-desktop/assets/6422176/743a4ffc-e291-4697-8ac5-8052cc921946" alt="Screenshot 2023-07-11 at 12 48 47 PM" class="img_SS3x"></p>
<h3 class="anchor anchorWithStickyNavbar_JmGV" id="podman-user-mode-networking-support-to-windowswsl-3251">Podman user-mode networking support to Windows/WSL <a href="https://github.com/containers/podman-desktop/pull/3251" target="_blank" rel="noopener noreferrer">#3251</a><a href="https://podman-desktop.io/blog/podman-desktop-release-1.3#podman-user-mode-networking-support-to-windowswsl-3251" class="hash-link" aria-label="Direct link to podman-user-mode-networking-support-to-windowswsl-3251" title="Direct link to podman-user-mode-networking-support-to-windowswsl-3251"></a></h3>
<p>Certain VPN setups or other specialized networking configs will block traffic from the virtual WSL networking device, resulting in the podman WSL backend from being unable to contact systems on the VPN, and potentially losing internet access altogether. The new switch allows you to create a podman VM machine configured to work correctly in mentioned above networking environments.</p>
<p><img loading="lazy" src="https://github.com/containers/podman-desktop/assets/620330/2f521576-b6a6-42b5-b24d-08df5b432608" alt="user" class="img_SS3x"></p>
<h3 class="anchor anchorWithStickyNavbar_JmGV" id="compose-group-summary-tab-3317">Compose group Summary tab <a href="https://github.com/containers/podman-desktop/pull/3317" target="_blank" rel="noopener noreferrer">#3317</a>,<a href="https://podman-desktop.io/blog/podman-desktop-release-1.3#compose-group-summary-tab-3317" class="hash-link" aria-label="Direct link to compose-group-summary-tab-3317" title="Direct link to compose-group-summary-tab-3317"></a></h3>
<p>Compose group Summary tab shows all containers in the group and let you navigate to Details page for specific container.</p>
<div style="width:100%;height:100%"></div>
<h3 class="anchor anchorWithStickyNavbar_JmGV" id="compose-group-inspect-tab-3316">Compose group Inspect tab <a href="https://github.com/containers/podman-desktop/pull/3316" target="_blank" rel="noopener noreferrer">#3316</a><a href="https://podman-desktop.io/blog/podman-desktop-release-1.3#compose-group-inspect-tab-3316" class="hash-link" aria-label="Direct link to compose-group-inspect-tab-3316" title="Direct link to compose-group-inspect-tab-3316"></a></h3>
<p>Compose group Inspect tab shows an array of "container inspect" from docker / podman.</p>
<div style="width:100%;height:100%"></div>
<h3 class="anchor anchorWithStickyNavbar_JmGV" id="deploy-to-kubernetes-in-compose-actions-3299"><code>Deploy to kubernetes</code> in compose actions <a href="https://github.com/containers/podman-desktop/pull/3295" target="_blank" rel="noopener noreferrer">#3299</a><a href="https://podman-desktop.io/blog/podman-desktop-release-1.3#deploy-to-kubernetes-in-compose-actions-3299" class="hash-link" aria-label="Direct link to deploy-to-kubernetes-in-compose-actions-3299" title="Direct link to deploy-to-kubernetes-in-compose-actions-3299"></a></h3>
<p>A button to deploy to kubernetes added to Compose group.</p>
<div style="width:100%;height:100%"></div>
<h3 class="anchor anchorWithStickyNavbar_JmGV" id="generate-kube-in-compose-actions-and-kube-tab-in-compose-details-3253"><code>Generate Kube</code> in Compose actions and <code>Kube</code> tab in compose details <a href="https://github.com/containers/podman-desktop/pull/3253" target="_blank" rel="noopener noreferrer">#3253</a><a href="https://podman-desktop.io/blog/podman-desktop-release-1.3#generate-kube-in-compose-actions-and-kube-tab-in-compose-details-3253" class="hash-link" aria-label="Direct link to generate-kube-in-compose-actions-and-kube-tab-in-compose-details-3253" title="Direct link to generate-kube-in-compose-actions-and-kube-tab-in-compose-details-3253"></a></h3>
<p><code>Generate Kube</code> item added to Compose actions and "Kube" tab is now available in Compose details view.</p>
<div style="width:100%;height:100%"></div>
<h3 class="anchor anchorWithStickyNavbar_JmGV" id="install-multiple-extensions-using-extension-pack-3150">Install multiple extensions using extension pack <a href="https://github.com/containers/podman-desktop/pull/3150" target="_blank" rel="noopener noreferrer">#3150</a><a href="https://podman-desktop.io/blog/podman-desktop-release-1.3#install-multiple-extensions-using-extension-pack-3150" class="hash-link" aria-label="Direct link to install-multiple-extensions-using-extension-pack-3150" title="Direct link to install-multiple-extensions-using-extension-pack-3150"></a></h3>
<p>An Extension pack introduced in Extension engine is a way to declare set of extensions to install them all at once.</p>
<div style="width:100%;height:100%"></div>
<h3 class="anchor anchorWithStickyNavbar_JmGV" id="customize-icons-from-extension-3131">Customize icons from extension <a href="https://github.com/containers/podman-desktop/pull/3131" target="_blank" rel="noopener noreferrer">#3131</a><a href="https://podman-desktop.io/blog/podman-desktop-release-1.3#customize-icons-from-extension-3131" class="hash-link" aria-label="Direct link to customize-icons-from-extension-3131" title="Direct link to customize-icons-from-extension-3131"></a></h3>
<p>Extensions now can customize icons for list elements using <code>when</code> clause.</p>
<p><img loading="lazy" src="https://github.com/containers/podman-desktop/assets/49404737/7aae5347-4f07-4854-ba11-1f629b5ccf22" alt="image" class="img_SS3x"></p>
<h3 class="anchor anchorWithStickyNavbar_JmGV" id="resource-details-page-update-1923">Resource details page update <a href="https://github.com/containers/podman-desktop/pull/1923" target="_blank" rel="noopener noreferrer">#1923</a><a href="https://podman-desktop.io/blog/podman-desktop-release-1.3#resource-details-page-update-1923" class="hash-link" aria-label="Direct link to resource-details-page-update-1923" title="Direct link to resource-details-page-update-1923"></a></h3>
<p>If you click on the arrow icon next to a resource name it will open up a details page (similarly to how clicking on a container in the container list opens up a details page).</p>
<p><img loading="lazy" src="https://user-images.githubusercontent.com/49404737/229542404-bae44f89-5cd3-4baf-8b08-e934e4462697.gif" alt="image" class="img_SS3x"></p>
<h3 class="anchor anchorWithStickyNavbar_JmGV" id="nodes-container-image-field-added-to-create-a-kind-cluster-form-3508"><code>Node's container image</code> field added to <code>Create a Kind cluster</code> form <a href="https://github.com/containers/podman-desktop/pull/3508" target="_blank" rel="noopener noreferrer">#3508</a><a href="https://podman-desktop.io/blog/podman-desktop-release-1.3#nodes-container-image-field-added-to-create-a-kind-cluster-form-3508" class="hash-link" aria-label="Direct link to nodes-container-image-field-added-to-create-a-kind-cluster-form-3508" title="Direct link to nodes-container-image-field-added-to-create-a-kind-cluster-form-3508"></a></h3>
<p>The new <code>Node's container image</code> field can be used to specify the Kubernetes version used for the control-planed.</p>
<p><img loading="lazy" src="https://github.com/containers/podman-desktop/assets/42176370/b2a63faf-629f-436d-8496-7c0cd8158679" alt="image" class="img_SS3x"></p>
<h3 class="anchor anchorWithStickyNavbar_JmGV" id="support-docker-desktop-extensions-using-a-backend-3435">Support Docker Desktop extensions using a backend <a href="https://github.com/containers/podman-desktop/pull/3435" target="_blank" rel="noopener noreferrer">#3435</a><a href="https://podman-desktop.io/blog/podman-desktop-release-1.3#support-docker-desktop-extensions-using-a-backend-3435" class="hash-link" aria-label="Direct link to support-docker-desktop-extensions-using-a-backend-3435" title="Direct link to support-docker-desktop-extensions-using-a-backend-3435"></a></h3>
<p>Podman Desktop now loads the containers in the backend as described in the vm section of extension descriptor the same way as Docker Desktop does.</p>
<h3 class="anchor anchorWithStickyNavbar_JmGV" id="initial-onboarding-implementation-for-podman-experimental-3308">Initial onboarding implementation for podman (experimental) <a href="https://github.com/containers/podman-desktop/pull/3308" target="_blank" rel="noopener noreferrer">#3308</a><a href="https://podman-desktop.io/blog/podman-desktop-release-1.3#initial-onboarding-implementation-for-podman-experimental-3308" class="hash-link" aria-label="Direct link to initial-onboarding-implementation-for-podman-experimental-3308" title="Direct link to initial-onboarding-implementation-for-podman-experimental-3308"></a></h3>
<p>This is the initial implementation for the onboarding feature. It only covers a simple onboarding for podman. Check system requirements -&gt; install podman -&gt; yay! Done!</p>
<h3 class="anchor anchorWithStickyNavbar_JmGV" id="notable-bug-fixes">Notable Bug Fixes<a href="https://podman-desktop.io/blog/podman-desktop-release-1.3#notable-bug-fixes" class="hash-link" aria-label="Direct link to Notable Bug Fixes" title="Direct link to Notable Bug Fixes"></a></h3>
<ul>
<li>Updating videos to be adaptive for mobile by @mairin <a href="https://github.com/containers/podman-desktop/pull/3229" target="_blank" rel="noopener noreferrer">#3229</a></li>
<li>Consistent max width and padding in settings by @deboer-tim <a href="https://github.com/containers/podman-desktop/pull/3232" target="_blank" rel="noopener noreferrer">#3232</a></li>
<li>Settings navigation bar resizing by @deboer-tim in <a href="https://github.com/containers/podman-desktop/pull/3231" target="_blank" rel="noopener noreferrer">#3231</a></li>
<li>Move new registry button to header by @deboer-tim <a href="https://github.com/containers/podman-desktop/pull/3245" target="_blank" rel="noopener noreferrer">#3245</a></li>
<li>Bigger lima logo by @afbjorklund <a href="https://github.com/containers/podman-desktop/pull/3248" target="_blank" rel="noopener noreferrer">#3248</a></li>
<li>Horizontal docker logo by @afbjorklund <a href="https://github.com/containers/podman-desktop/pull/3236" target="_blank" rel="noopener noreferrer">#3236</a></li>
<li>Respect LIMA_HOME environment variable by @afbjorklund <a href="https://github.com/containers/podman-desktop/pull/3254" target="_blank" rel="noopener noreferrer">#3254</a></li>
<li>Add check before writing to terminal by @lstocchi <a href="https://github.com/containers/podman-desktop/pull/3263" target="_blank" rel="noopener noreferrer">#3263</a></li>
<li>Wait until remote side has fully initialized the extensions by @benoitf <a href="https://github.com/containers/podman-desktop/pull/3257" target="_blank" rel="noopener noreferrer">#3257</a></li>
<li>Fix loader not centered horizontally by @benoitf <a href="https://github.com/containers/podman-desktop/pull/3270" target="_blank" rel="noopener noreferrer">#3270</a></li>
<li>Troubleshooting still waiting after failure by @deboer-tim <a href="https://github.com/containers/podman-desktop/pull/3354" target="_blank" rel="noopener noreferrer">#3354</a></li>
<li>Store error for build by @cdrage <a href="https://github.com/containers/podman-desktop/pull/3365" target="_blank" rel="noopener noreferrer">#3365</a></li>
<li>Missing checkbox tooltips by @deboer-tim <a href="https://github.com/containers/podman-desktop/pull/3380" target="_blank" rel="noopener noreferrer">#3380</a></li>
<li>Load compose logs async not await by @cdrage <a href="https://github.com/containers/podman-desktop/pull/3377" target="_blank" rel="noopener noreferrer">#3377</a></li>
<li>Set rootful connection when starting rootful machine by @lstocchi <a href="https://github.com/containers/podman-desktop/pull/3364" target="_blank" rel="noopener noreferrer">#3364</a></li>
<li>Default last page by @deboer-tim <a href="https://github.com/containers/podman-desktop/pull/3388" target="_blank" rel="noopener noreferrer">#3388</a></li>
<li>Avoid dashboard displaying providers starting while they don't by @benoitf <a href="https://github.com/containers/podman-desktop/pull/3451" target="_blank" rel="noopener noreferrer">#3451</a></li>
<li>Do not use extensionInfo until it is defined by @benoitf <a href="https://github.com/containers/podman-desktop/pull/3450" target="_blank" rel="noopener noreferrer">#V</a></li>
<li>Allow BASIC authentication (all caps) by @cdrage <a href="https://github.com/containers/podman-desktop/pull/3471" target="_blank" rel="noopener noreferrer">#3471</a></li>
<li>Allow single domain registry such as localhost:5000 by @cdrage <a href="https://github.com/containers/podman-desktop/pull/3468" target="_blank" rel="noopener noreferrer">#3468</a></li>
<li>Create /usr/local/bin directory if it does not exist on binary install by @cdrage <a href="https://github.com/containers/podman-desktop/pull/3425" target="_blank" rel="noopener noreferrer">#3425</a></li>
<li>Only delete selected pods by @deboer-tim <a href="https://github.com/containers/podman-desktop/pull/3378" target="_blank" rel="noopener noreferrer">#</a></li>
<li>Add back 'Done' text on the button by @benoitf <a href="https://github.com/containers/podman-desktop/pull/3487" target="_blank" rel="noopener noreferrer">#3487</a></li>
<li>Do not wait for more than 5s when checking for podman ping by @benoitf <a href="https://github.com/containers/podman-desktop/pull/3497" target="_blank" rel="noopener noreferrer">#3497</a></li>
<li>Add proxy support for extension using patching get and request approach by @dgolovin <a href="https://github.com/containers/podman-desktop/pull/2825" target="_blank" rel="noopener noreferrer">#2825</a></li>
<li>Refresh component when field is updated by @benoitf <a href="https://github.com/containers/podman-desktop/pull/3525" target="_blank" rel="noopener noreferrer">#3525</a></li>
<li>Higher-res icons for featured extensions list by @mairin <a href="https://github.com/containers/podman-desktop/pull/3511" target="_blank" rel="noopener noreferrer">#3511</a></li>
<li>Main nav selection by @deboer-tim <a href="https://github.com/containers/podman-desktop/pull/3510" target="_blank" rel="noopener noreferrer">#3510</a></li>
<li>kube event error when switching context by @jeffmaury <a href="https://github.com/containers/podman-desktop/pull/3494" target="_blank" rel="noopener noreferrer">#3494</a></li>
<li>Reset error message each time we pull image by @benoitf <a href="https://github.com/containers/podman-desktop/pull/3550" target="_blank" rel="noopener noreferrer">#3550</a></li>
</ul>
<h3 class="anchor anchorWithStickyNavbar_JmGV" id="community-thank-you">Community Thank You<a href="https://podman-desktop.io/blog/podman-desktop-release-1.3#community-thank-you" class="hash-link" aria-label="Direct link to Community Thank You" title="Direct link to Community Thank You"></a></h3>
<p>🎉 Wed like to say a big thank you to everyone who helped to make Podman Desktop even better.</p>
<p>A warm welcome to <a href="https://github.com/rostalan" target="_blank" rel="noopener noreferrer">@rostalan</a> and <a href="https://github.com/axel7083" target="_blank" rel="noopener noreferrer">@axel7083</a> who made their first contribution to the project in this release.</p>
<h3 class="anchor anchorWithStickyNavbar_JmGV" id="final-notes">Final Notes<a href="https://podman-desktop.io/blog/podman-desktop-release-1.3#final-notes" class="hash-link" aria-label="Direct link to Final Notes" title="Direct link to Final Notes"></a></h3>
<p>The complete list of issues fixed in this release is available <a href="https://github.com/containers/podman-desktop/issues?q=is%3Aclosed+milestone%3A1.3.0" target="_blank" rel="noopener noreferrer">here</a>.</p>
<p>Get the latest release from the <a href="https://podman-desktop.io/downloads">Downloads</a> section of the website and boost your development journey with Podman Desktop. Additionally, visit the <a href="https://github.com/containers/podman-desktop" target="_blank" rel="noopener noreferrer">GitHub repository</a> and see how you can help us make Podman Desktop better.</p>]]></content:encoded>
<category>podman-desktop</category>
<category>release</category>
<category>kubernetes</category>
<category>openshift</category>
</item>
<item>
<title><![CDATA[Release Notes - Podman Desktop 1.2]]></title>
<link>https://podman-desktop.io/blog/podman-desktop-release-1.2</link>
<guid>https://podman-desktop.io/blog/podman-desktop-release-1.2</guid>
<pubDate>Wed, 12 Jul 2023 00:00:00 GMT</pubDate>
<description><![CDATA[Podman Desktop 1.2 has been released!]]></description>
<content:encoded><![CDATA[<p>Podman Desktop 1.2 Release! 🎉</p>
<p>We're excited to announce the release of Podman Desktop version 1.2.0! This release includes many new features (Kubernetes, Compose and extension support!), bug fixes, and improvements to enhance your container management experience. Here's a summary of the key changes in this release:</p>
<ul>
<li><strong>Added start/stop/delete/restart buttons for Compose</strong>: You can now make changes to an entire Compose group of containers</li>
<li><strong>Kubernetes context on the status bar</strong>: Choose from multiple Kubernetes contexts more easily all from the status bar</li>
<li><strong>Rename images</strong>: Rename an image with a click of a button</li>
<li><strong>Protocol handler support</strong>: Added support for protocol handlers such as <code>open podman-desktop:extension/redhat.openshift-local</code></li>
<li><strong>Troubleshooting page</strong>: A troubleshooting page for helping diagnose Podman Desktop related development issues</li>
</ul>
<p>Podman Desktop 1.2 is now available. <a href="https://podman-desktop.io/downloads">Click here to download it</a>!</p>
<p><img loading="lazy" alt="Podman-desktop-1-2-hero" src="https://podman-desktop.io/assets/images/podman-desktop-release-1.2-3a022da0788ed1fd7e6c1820879dd235.png" width="1920" height="1080" class="img_SS3x"></p>
<hr>
<h2 class="anchor anchorWithStickyNavbar_JmGV" id="release-details">Release Details<a href="https://podman-desktop.io/blog/podman-desktop-release-1.2#release-details" class="hash-link" aria-label="Direct link to Release Details" title="Direct link to Release Details"></a></h2>
<h3 class="anchor anchorWithStickyNavbar_JmGV" id="added-startstopdeleterestart-buttons-for-compose">Added start/stop/delete/restart buttons for Compose<a href="https://podman-desktop.io/blog/podman-desktop-release-1.2#added-startstopdeleterestart-buttons-for-compose" class="hash-link" aria-label="Direct link to Added start/stop/delete/restart buttons for Compose" title="Direct link to Added start/stop/delete/restart buttons for Compose"></a></h3>
<p>In the last month we've been addind support for more Compose features. Before you were only able to control a group of containers if they were in a Pod. Now we have added the ability to control a group of Compose containers. You can now start, stop, delete and restart a group of containers launched by either <code>docker-compose</code> or <code>podman-compose</code>.</p>
<p>Stay tuned as we add even more features to Compose! If you have any feedback or feature requests, feel free to open an issue or start a discussion on GitHub.</p>
<div style="width:100%;height:100%"></div>
<h3 class="anchor anchorWithStickyNavbar_JmGV" id="kubernetes-context-on-the-status-bar">Kubernetes context on the status bar<a href="https://podman-desktop.io/blog/podman-desktop-release-1.2#kubernetes-context-on-the-status-bar" class="hash-link" aria-label="Direct link to Kubernetes context on the status bar" title="Direct link to Kubernetes context on the status bar"></a></h3>
<p>With Kubernetes context on the status bar, you can switch from one context to another in just a couple of clicks. Easily switch to a different cluster all together. If there are multiple contexts available, you can now click and pick which one to use.</p>
<div style="width:100%;height:100%"></div>
<h3 class="anchor anchorWithStickyNavbar_JmGV" id="rename-images">Rename images<a href="https://podman-desktop.io/blog/podman-desktop-release-1.2#rename-images" class="hash-link" aria-label="Direct link to Rename images" title="Direct link to Rename images"></a></h3>
<p>Deployed an image but now you need to rename it / add a new tag? Podman Desktop allows you to edit an image now. Thanks to an awesome contributor <a href="https://github.com/tuckerrc" target="_blank" rel="noopener noreferrer">@tuckerrc</a> who added the new feature.</p>
<div style="width:100%;height:100%"></div>
<h3 class="anchor anchorWithStickyNavbar_JmGV" id="troubleshooting-page">Troubleshooting page<a href="https://podman-desktop.io/blog/podman-desktop-release-1.2#troubleshooting-page" class="hash-link" aria-label="Direct link to Troubleshooting page" title="Direct link to Troubleshooting page"></a></h3>
<p>Developing an extension for Podman Desktop? Want to view the logs of Podman Desktop as well as ping your container connection? We now have a troubleshooting page!</p>
<p>Click on the lightbulb button on the bottom right to access the page.</p>
<div style="width:100%;height:100%"></div>
<h3 class="anchor anchorWithStickyNavbar_JmGV" id="protocol-handler-support">Protocol handler support<a href="https://podman-desktop.io/blog/podman-desktop-release-1.2#protocol-handler-support" class="hash-link" aria-label="Direct link to Protocol handler support" title="Direct link to Protocol handler support"></a></h3>
<p>Podman Desktop now supports protocol handling when using the terminal! Want to access your favourite extension directly from a script or the terminal? If you type in <code>open podman-desktop:extension/redhat.openshift-local</code> in the terminal, Podman Desktop will automatically load up to the correct extension.</p>
<div style="width:100%;height:100%"></div>
<hr>
<h2 class="anchor anchorWithStickyNavbar_JmGV" id="other-notable-features">Other Notable Features<a href="https://podman-desktop.io/blog/podman-desktop-release-1.2#other-notable-features" class="hash-link" aria-label="Direct link to Other Notable Features" title="Direct link to Other Notable Features"></a></h2>
<ul>
<li>Background colors and FormPage (<a href="https://github.com/containers/podman-desktop/pull/2977" target="_blank" rel="noopener noreferrer">PR #2977</a>)</li>
<li>Add ability to add insecure registry / skipping cert verify (<a href="https://github.com/containers/podman-desktop/pull/2896" target="_blank" rel="noopener noreferrer">PR #2896</a>)</li>
<li>Add support for icon contribution (<a href="https://github.com/containers/podman-desktop/pull/2984" target="_blank" rel="noopener noreferrer">PR #2984</a>)</li>
<li>Add warning dialog message that virtual machine has low memory limit (<a href="https://github.com/containers/podman-desktop/pull/2822" target="_blank" rel="noopener noreferrer">PR #2822</a>)</li>
<li>Propose indexed name for new pod (<a href="https://github.com/containers/podman-desktop/pull/3028" target="_blank" rel="noopener noreferrer">PR #3028</a>)</li>
<li>Add restart button after enabling / disabling mac os compatibility (<a href="https://github.com/containers/podman-desktop/pull/2841" target="_blank" rel="noopener noreferrer">PR #2841</a>)</li>
<li>Add environment related helper constants (<a href="https://github.com/containers/podman-desktop/pull/3079" target="_blank" rel="noopener noreferrer">PR #3079</a>)</li>
<li>Allow entrypoint and cmd when starting container (<a href="https://github.com/containers/podman-desktop/pull/3031" target="_blank" rel="noopener noreferrer">PR #3031</a>)</li>
<li>Add a way to debug stores in troubleshooting page (<a href="https://github.com/containers/podman-desktop/pull/3121" target="_blank" rel="noopener noreferrer">PR #3121</a>)</li>
<li>Add custompick component (#2855) (<a href="https://github.com/containers/podman-desktop/pull/3012" target="_blank" rel="noopener noreferrer">PR #3012</a>)</li>
<li>Dynamic breadcrumbs (<a href="https://github.com/containers/podman-desktop/pull/3119" target="_blank" rel="noopener noreferrer">PR #3119</a>)</li>
<li>Icons on form pages (<a href="https://github.com/containers/podman-desktop/pull/3155" target="_blank" rel="noopener noreferrer">PR #3155</a>)</li>
<li>Switch more pages to formpage (<a href="https://github.com/containers/podman-desktop/pull/3162" target="_blank" rel="noopener noreferrer">PR #3162</a>)</li>
<li>Add rename image button (<a href="https://github.com/containers/podman-desktop/pull/2588" target="_blank" rel="noopener noreferrer">PR #2588</a>)</li>
<li>Fixed headers, improved scrollbars (<a href="https://github.com/containers/podman-desktop/pull/2863" target="_blank" rel="noopener noreferrer">PR #2863</a>)</li>
<li>Reports warnings on failed kube deploy, fixes error out (<a href="https://github.com/containers/podman-desktop/pull/3050" target="_blank" rel="noopener noreferrer">PR #3050</a>)</li>
<li>Kube context on statusbar (<a href="https://github.com/containers/podman-desktop/pull/2755" target="_blank" rel="noopener noreferrer">PR #2755</a>)</li>
<li>Install provider if not installed when clicking on create new button (#2706) (<a href="https://github.com/containers/podman-desktop/pull/2817" target="_blank" rel="noopener noreferrer">PR #2817</a>)</li>
<li>Add tag and authenticated push capacity to the extension API (<a href="https://github.com/containers/podman-desktop/pull/2876" target="_blank" rel="noopener noreferrer">PR #2876</a>)</li>
<li>Add navigation bar e2e tests (<a href="https://github.com/containers/podman-desktop/pull/2950" target="_blank" rel="noopener noreferrer">PR #2950</a>)</li>
</ul>
<hr>
<h2 class="anchor anchorWithStickyNavbar_JmGV" id="documentation-updates">Documentation Updates<a href="https://podman-desktop.io/blog/podman-desktop-release-1.2#documentation-updates" class="hash-link" aria-label="Direct link to Documentation Updates" title="Direct link to Documentation Updates"></a></h2>
<ul>
<li>Fix documentation for building image of extensions (<a href="https://github.com/containers/podman-desktop/pull/2873" target="_blank" rel="noopener noreferrer">PR #2873</a>)</li>
<li>Add Minikube install docs (<a href="https://github.com/containers/podman-desktop/pull/2824" target="_blank" rel="noopener noreferrer">PR #2824</a>)</li>
<li>Add Minikube documentation (<a href="https://github.com/containers/podman-desktop/pull/2694" target="_blank" rel="noopener noreferrer">PR #2694</a>)</li>
<li>Updated Building an image procedure (<a href="https://github.com/containers/podman-desktop/pull/2964" target="_blank" rel="noopener noreferrer">PR #2964</a>)</li>
<li>Starting a container (<a href="https://github.com/containers/podman-desktop/pull/2958" target="_blank" rel="noopener noreferrer">PR #2958</a>)</li>
<li>Pulling an image (<a href="https://github.com/containers/podman-desktop/pull/2956" target="_blank" rel="noopener noreferrer">PR #2956</a>)</li>
<li>Updated selecting containers to run in a pod (<a href="https://github.com/containers/podman-desktop/pull/2970" target="_blank" rel="noopener noreferrer">PR #2970</a>)</li>
<li>Pushing an image to a registry (<a href="https://github.com/containers/podman-desktop/pull/2969" target="_blank" rel="noopener noreferrer">PR #2969</a>)</li>
<li>How to add an insecure registry (<a href="https://github.com/containers/podman-desktop/pull/2953" target="_blank" rel="noopener noreferrer">PR #2953</a>)</li>
<li>Add documentation for lima (<a href="https://github.com/containers/podman-desktop/pull/2995" target="_blank" rel="noopener noreferrer">PR #2995</a>)</li>
<li>Replace broken link to podman.io (<a href="https://github.com/containers/podman-desktop/pull/2994" target="_blank" rel="noopener noreferrer">PR #2994</a>)</li>
<li>Authenticating to a pre-configured registry (<a href="https://github.com/containers/podman-desktop/pull/2965" target="_blank" rel="noopener noreferrer">PR #2965</a>)</li>
<li>Lima is not a container engine (<a href="https://github.com/containers/podman-desktop/pull/3051" target="_blank" rel="noopener noreferrer">PR #3051</a>)</li>
<li>Using the Troubleshooting page (<a href="https://github.com/containers/podman-desktop/pull/3083" target="_blank" rel="noopener noreferrer">PR #3083</a>)</li>
<li>View and select your current Kubernetes context in the status bar (<a href="https://github.com/containers/podman-desktop/pull/3090" target="_blank" rel="noopener noreferrer">PR #3090</a>)</li>
</ul>
<hr>
<h2 class="anchor anchorWithStickyNavbar_JmGV" id="notable-bug-fixes">Notable Bug Fixes<a href="https://podman-desktop.io/blog/podman-desktop-release-1.2#notable-bug-fixes" class="hash-link" aria-label="Direct link to Notable Bug Fixes" title="Direct link to Notable Bug Fixes"></a></h2>
<ul>
<li>Deleting a running pod generates an error (<a href="https://github.com/containers/podman-desktop/pull/2827" target="_blank" rel="noopener noreferrer">PR #2827</a>)</li>
<li>If kubeconfig is empty, does not try to do things, cancel (<a href="https://github.com/containers/podman-desktop/pull/2874" target="_blank" rel="noopener noreferrer">PR #2874</a>)</li>
<li>Async telemetry startup (<a href="https://github.com/containers/podman-desktop/pull/2885" target="_blank" rel="noopener noreferrer">PR #2885</a>)</li>
<li>Do not block startup while waiting for kube resource refresh (<a href="https://github.com/containers/podman-desktop/pull/2884" target="_blank" rel="noopener noreferrer">PR #2884</a>)</li>
<li>Images list too wide (<a href="https://github.com/containers/podman-desktop/pull/2918" target="_blank" rel="noopener noreferrer">PR #2918</a>)</li>
<li>Compose deactivate function never called (<a href="https://github.com/containers/podman-desktop/pull/2922" target="_blank" rel="noopener noreferrer">PR #2922</a>)</li>
<li>Auto-scrolling on form pages, layout issues (<a href="https://github.com/containers/podman-desktop/pull/2927" target="_blank" rel="noopener noreferrer">PR #2927</a>)</li>
<li>Show current context in quick pick (<a href="https://github.com/containers/podman-desktop/pull/2920" target="_blank" rel="noopener noreferrer">PR #2920</a>)</li>
<li>Remove sticky position of loader in dashboard UI (#2535) (<a href="https://github.com/containers/podman-desktop/pull/2959" target="_blank" rel="noopener noreferrer">PR #2959</a>)</li>
<li>Undo change that broke the website (<a href="https://github.com/containers/podman-desktop/pull/2992" target="_blank" rel="noopener noreferrer">PR #2992</a>)</li>
<li>Detailspage, resizing &amp; consistency (<a href="https://github.com/containers/podman-desktop/pull/2987" target="_blank" rel="noopener noreferrer">PR #2987</a>)</li>
<li>Quick pick click to close and over nav bar (<a href="https://github.com/containers/podman-desktop/pull/2758" target="_blank" rel="noopener noreferrer">PR #2758</a>)</li>
<li>Only show empty screen when no pods (<a href="https://github.com/containers/podman-desktop/pull/2929" target="_blank" rel="noopener noreferrer">PR #2929</a>)</li>
<li>Do not redirect to /pods when deleting pod in containerlist (<a href="https://github.com/containers/podman-desktop/pull/2963" target="_blank" rel="noopener noreferrer">PR #2963</a>)</li>
<li>Bulk delete on pods should call the pod deletion (<a href="https://github.com/containers/podman-desktop/pull/2979" target="_blank" rel="noopener noreferrer">PR #2979</a>)</li>
<li>Update nodejs version to 18 in .nvmrc to fix yarn install failure (<a href="https://github.com/containers/podman-desktop/pull/2989" target="_blank" rel="noopener noreferrer">PR #2989</a>)</li>
<li>Website check targets (<a href="https://github.com/containers/podman-desktop/pull/2996" target="_blank" rel="noopener noreferrer">PR #2996</a>)</li>
<li>Don't show exception to user (<a href="https://github.com/containers/podman-desktop/pull/3034" target="_blank" rel="noopener noreferrer">PR #3034</a>)</li>
<li>Interpret arguments given to info command for example (<a href="https://github.com/containers/podman-desktop/pull/3015" target="_blank" rel="noopener noreferrer">PR #3015</a>)</li>
<li>Change defaults for Podman machine (<a href="https://github.com/containers/podman-desktop/pull/3061" target="_blank" rel="noopener noreferrer">PR #3061</a>)</li>
<li>Normalize development/production folders path (<a href="https://github.com/containers/podman-desktop/pull/3113" target="_blank" rel="noopener noreferrer">PR #3113</a>)</li>
<li>Calculate machine socket path for linux (<a href="https://github.com/containers/podman-desktop/pull/3070" target="_blank" rel="noopener noreferrer">PR #3070</a>)</li>
<li>Replace backslash with slash so to support rendering on Windows (#3120) (<a href="https://github.com/containers/podman-desktop/pull/3122" target="_blank" rel="noopener noreferrer">PR #3122</a>)</li>
<li>Keep stdout and stderr in the error object for Docker Desktop extensions (<a href="https://github.com/containers/podman-desktop/pull/3014" target="_blank" rel="noopener noreferrer">PR #3014</a>)</li>
<li>Mark task completed if there's a failure (<a href="https://github.com/containers/podman-desktop/pull/3016" target="_blank" rel="noopener noreferrer">PR #3016</a>)</li>
<li>Handle invalid kubeconfig file (<a href="https://github.com/containers/podman-desktop/pull/3129" target="_blank" rel="noopener noreferrer">PR #3129</a>)</li>
<li>Do not remove registries when podman extension is stopping (<a href="https://github.com/containers/podman-desktop/pull/3136" target="_blank" rel="noopener noreferrer">PR #3136</a>)</li>
<li>Warning should be amber (<a href="https://github.com/containers/podman-desktop/pull/3153" target="_blank" rel="noopener noreferrer">PR #3153</a>)</li>
<li>Load user extensions from plugins as removable (<a href="https://github.com/containers/podman-desktop/pull/3152" target="_blank" rel="noopener noreferrer">PR #3152</a>)</li>
<li>Images with spaces in entrypoints or commands fail to start (<a href="https://github.com/containers/podman-desktop/pull/3161" target="_blank" rel="noopener noreferrer">PR #3161</a>)</li>
<li>Scrolling offscreen when clicking checkbox (<a href="https://github.com/containers/podman-desktop/pull/3178" target="_blank" rel="noopener noreferrer">PR #3178</a>)</li>
<li>Avoid messagebox expanding offscreen (<a href="https://github.com/containers/podman-desktop/pull/2778" target="_blank" rel="noopener noreferrer">PR #2778</a>)</li>
<li>Release-notes-generator run failure (<a href="https://github.com/containers/podman-desktop/pull/2752" target="_blank" rel="noopener noreferrer">PR #2752</a>)</li>
<li>Unable to do a new build if the previous one failed (<a href="https://github.com/containers/podman-desktop/pull/2721" target="_blank" rel="noopener noreferrer">PR #2721</a>)</li>
</ul>
<hr>
<h2 class="anchor anchorWithStickyNavbar_JmGV" id="community-thank-you">Community Thank You<a href="https://podman-desktop.io/blog/podman-desktop-release-1.2#community-thank-you" class="hash-link" aria-label="Direct link to Community Thank You" title="Direct link to Community Thank You"></a></h2>
<p>🎉 Wed like to say a big thank you to everyone who helped to make Podman Desktop even better.</p>
<p>A big shoutout to <a href="https://github.com/afbjorklund" target="_blank" rel="noopener noreferrer">@afbjorklund</a>, <a href="https://github.com/tuckerrc" target="_blank" rel="noopener noreferrer">@tuckerrc</a> and <a href="https://github.com/evanshortiss" target="_blank" rel="noopener noreferrer">@evanshortiss</a> who contributed to this release!</p>
<hr>
<h2 class="anchor anchorWithStickyNavbar_JmGV" id="final-notes">Final notes<a href="https://podman-desktop.io/blog/podman-desktop-release-1.2#final-notes" class="hash-link" aria-label="Direct link to Final notes" title="Direct link to Final notes"></a></h2>
<p>The complete list of issues fixed in this release is available <a href="https://github.com/containers/podman-desktop/issues?q=is%3Aclosed+milestone%3A1.2.0" target="_blank" rel="noopener noreferrer">here</a> and <a href="https://github.com/containers/podman-desktop/issues?q=is%3Aclosed+milestone%3A1.2.0" target="_blank" rel="noopener noreferrer">here</a>.</p>
<p>Get the latest release from the <a href="https://podman-desktop.io/downloads">Downloads</a> section of the website and boost your development journey with Podman Desktop. Additionally, visit the <a href="https://github.com/containers/podman-desktop" target="_blank" rel="noopener noreferrer">GitHub repository</a> and see how you can help us make Podman Desktop better.</p>]]></content:encoded>
<category>podman-desktop</category>
<category>release</category>
<category>kubernetes</category>
<category>openshift</category>
</item>
<item>
<title><![CDATA[Release Notes - Podman Desktop 1.1]]></title>
<link>https://podman-desktop.io/blog/podman-desktop-release-1.1</link>
<guid>https://podman-desktop.io/blog/podman-desktop-release-1.1</guid>
<pubDate>Thu, 08 Jun 2023 00:00:00 GMT</pubDate>
<description><![CDATA[Podman Desktop 1.1 has been released!]]></description>
<content:encoded><![CDATA[<p>Podman Desktop 1.1 Release! 🎉</p>
<p>This is primarily a bug-fix release to fix a few important issues, but we've managed to squeeze in a few enhancements
along the way.</p>
<ul>
<li><strong>Podman 4.5.1</strong>: Podman 4.5.1 now included in Windows and Mac installers.</li>
<li><strong>Extensions</strong>: Update extensions from within Podman Desktop.</li>
<li><strong>Lima Support</strong>: Choose engine type and override its name from the settings.</li>
<li><strong>UX and UI Improvements</strong>: New loading screen.</li>
</ul>
<p>Podman Desktop 1.1 is now available. <a href="https://podman-desktop.io/downloads">Click here to download it</a>!</p>
<p><img loading="lazy" alt="Podman-desktop-1-1-hero" src="https://podman-desktop.io/assets/images/podman-desktop-release-1.1-44e0feeaa28730210c0fbecda0193b95.png" width="3958" height="2308" class="img_SS3x"></p>
<hr>
<h2 class="anchor anchorWithStickyNavbar_JmGV" id="release-details">Release Details<a href="https://podman-desktop.io/blog/podman-desktop-release-1.1#release-details" class="hash-link" aria-label="Direct link to Release Details" title="Direct link to Release Details"></a></h2>
<h3 class="anchor anchorWithStickyNavbar_JmGV" id="podman-v451">Podman v4.5.1<a href="https://podman-desktop.io/blog/podman-desktop-release-1.1#podman-v451" class="hash-link" aria-label="Direct link to Podman v4.5.1" title="Direct link to Podman v4.5.1"></a></h3>
<p>Podman Desktop 1.1 moves up to <a href="https://github.com/containers/podman/releases/tag/v4.5.1" target="_blank" rel="noopener noreferrer">Podman 4.5.1</a>.</p>
<h3 class="anchor anchorWithStickyNavbar_JmGV" id="extensions">Extensions<a href="https://podman-desktop.io/blog/podman-desktop-release-1.1#extensions" class="hash-link" aria-label="Direct link to Extensions" title="Direct link to Extensions"></a></h3>
<p>Optional extensions will follow their own lifecycle and update independently from Podman Desktop. As of
this release you'll be able to see when there is an update available and install from within
Podman Desktop <a href="https://github.com/containers/podman-desktop/pull/2655" target="_blank" rel="noopener noreferrer">#2655</a>.</p>
<p>We've also added options in <strong><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="gear" class="svg-inline--fa fa-gear fa-lg" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path fill="currentColor" d="M495.9 166.6c3.2 8.7 .5 18.4-6.4 24.6l-43.3 39.4c1.1 8.3 1.7 16.8 1.7 25.4s-.6 17.1-1.7 25.4l43.3 39.4c6.9 6.2 9.6 15.9 6.4 24.6c-4.4 11.9-9.7 23.3-15.8 34.3l-4.7 8.1c-6.6 11-14 21.4-22.1 31.2c-5.9 7.2-15.7 9.6-24.5 6.8l-55.7-17.7c-13.4 10.3-28.2 18.9-44 25.4l-12.5 57.1c-2 9.1-9 16.3-18.2 17.8c-13.8 2.3-28 3.5-42.5 3.5s-28.7-1.2-42.5-3.5c-9.2-1.5-16.2-8.7-18.2-17.8l-12.5-57.1c-15.8-6.5-30.6-15.1-44-25.4L83.1 425.9c-8.8 2.8-18.6 .3-24.5-6.8c-8.1-9.8-15.5-20.2-22.1-31.2l-4.7-8.1c-6.1-11-11.4-22.4-15.8-34.3c-3.2-8.7-.5-18.4 6.4-24.6l43.3-39.4C64.6 273.1 64 264.6 64 256s.6-17.1 1.7-25.4L22.4 191.2c-6.9-6.2-9.6-15.9-6.4-24.6c4.4-11.9 9.7-23.3 15.8-34.3l4.7-8.1c6.6-11 14-21.4 22.1-31.2c5.9-7.2 15.7-9.6 24.5-6.8l55.7 17.7c13.4-10.3 28.2-18.9 44-25.4l12.5-57.1c2-9.1 9-16.3 18.2-17.8C227.3 1.2 241.5 0 256 0s28.7 1.2 42.5 3.5c9.2 1.5 16.2 8.7 18.2 17.8l12.5 57.1c15.8 6.5 30.6 15.1 44 25.4l55.7-17.7c8.8-2.8 18.6-.3 24.5 6.8c8.1 9.8 15.5 20.2 22.1 31.2l4.7 8.1c6.1 11 11.4 22.4 15.8 34.3zM256 336a80 80 0 1 0 0-160 80 80 0 1 0 0 160z"></path></svg>Settings &gt; Preferences</strong> to
automatically check for and install extension updates.</p>
<div style="width:100%;height:100%"></div>
<p><img loading="lazy" alt="Update extensions" src="https://podman-desktop.io/assets/images/update-extensions-6b1ea25170c2f1b7608d8f5a887d902a.png" width="1324" height="364" class="img_SS3x"></p>
<h3 class="anchor anchorWithStickyNavbar_JmGV" id="lima-support">Lima Support<a href="https://podman-desktop.io/blog/podman-desktop-release-1.1#lima-support" class="hash-link" aria-label="Direct link to Lima Support" title="Direct link to Lima Support"></a></h3>
<p>Thanks to contributor <a href="https://github.com/afbjorklund" target="_blank" rel="noopener noreferrer">Anders Björklund</a>, we have some improvements to the
Lima extension! In <strong><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="gear" class="svg-inline--fa fa-gear fa-lg" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path fill="currentColor" d="M495.9 166.6c3.2 8.7 .5 18.4-6.4 24.6l-43.3 39.4c1.1 8.3 1.7 16.8 1.7 25.4s-.6 17.1-1.7 25.4l43.3 39.4c6.9 6.2 9.6 15.9 6.4 24.6c-4.4 11.9-9.7 23.3-15.8 34.3l-4.7 8.1c-6.6 11-14 21.4-22.1 31.2c-5.9 7.2-15.7 9.6-24.5 6.8l-55.7-17.7c-13.4 10.3-28.2 18.9-44 25.4l-12.5 57.1c-2 9.1-9 16.3-18.2 17.8c-13.8 2.3-28 3.5-42.5 3.5s-28.7-1.2-42.5-3.5c-9.2-1.5-16.2-8.7-18.2-17.8l-12.5-57.1c-15.8-6.5-30.6-15.1-44-25.4L83.1 425.9c-8.8 2.8-18.6 .3-24.5-6.8c-8.1-9.8-15.5-20.2-22.1-31.2l-4.7-8.1c-6.1-11-11.4-22.4-15.8-34.3c-3.2-8.7-.5-18.4 6.4-24.6l43.3-39.4C64.6 273.1 64 264.6 64 256s.6-17.1 1.7-25.4L22.4 191.2c-6.9-6.2-9.6-15.9-6.4-24.6c4.4-11.9 9.7-23.3 15.8-34.3l4.7-8.1c6.6-11 14-21.4 22.1-31.2c5.9-7.2 15.7-9.6 24.5-6.8l55.7 17.7c13.4-10.3 28.2-18.9 44-25.4l12.5-57.1c2-9.1 9-16.3 18.2-17.8C227.3 1.2 241.5 0 256 0s28.7 1.2 42.5 3.5c9.2 1.5 16.2 8.7 18.2 17.8l12.5 57.1c15.8 6.5 30.6 15.1 44 25.4l55.7-17.7c8.8-2.8 18.6-.3 24.5 6.8c8.1 9.8 15.5 20.2 22.1 31.2l4.7 8.1c6.1 11 11.4 22.4 15.8 34.3zM256 336a80 80 0 1 0 0-160 80 80 0 1 0 0 160z"></path></svg>Settings &gt; Preferences</strong> you can select which
engine type Lima runs on and override the instance name <a href="https://github.com/containers/podman-desktop/pull/2674" target="_blank" rel="noopener noreferrer">#2674</a>.</p>
<p><img loading="lazy" src="https://user-images.githubusercontent.com/10364051/241755966-0a6a293b-b18e-4222-9c40-abd6c114d464.png" alt="Lima preferences" class="img_SS3x"></p>
<h3 class="anchor anchorWithStickyNavbar_JmGV" id="other-ui-and-ux-improvements">Other UI and UX Improvements<a href="https://podman-desktop.io/blog/podman-desktop-release-1.1#other-ui-and-ux-improvements" class="hash-link" aria-label="Direct link to Other UI and UX Improvements" title="Direct link to Other UI and UX Improvements"></a></h3>
<h4 class="anchor anchorWithStickyNavbar_JmGV" id="new-loading-screen">New Loading Screen<a href="https://podman-desktop.io/blog/podman-desktop-release-1.1#new-loading-screen" class="hash-link" aria-label="Direct link to New Loading Screen" title="Direct link to New Loading Screen"></a></h4>
<p>We have a new loading screen, Podman Desktop style! <a href="https://github.com/containers/podman-desktop/pull/2743" target="_blank" rel="noopener noreferrer">#2743</a>.</p>
<div style="width:100%;height:100%"></div>
<hr>
<h2 class="anchor anchorWithStickyNavbar_JmGV" id="other-notable-enhancements">Other Notable Enhancements<a href="https://podman-desktop.io/blog/podman-desktop-release-1.1#other-notable-enhancements" class="hash-link" aria-label="Direct link to Other Notable Enhancements" title="Direct link to Other Notable Enhancements"></a></h2>
<ul>
<li>Docker-compose can be installed system-wide <a href="https://github.com/containers/podman-desktop/pull/2718" target="_blank" rel="noopener noreferrer">#2718</a>.</li>
<li>Show warning when creating a pod with two containers that use the same port <a href="https://github.com/containers/podman-desktop/pull/2671" target="_blank" rel="noopener noreferrer">#2671</a>.</li>
<li>Display Kubernetes context name in pod label <a href="https://github.com/containers/podman-desktop/pull/2634" target="_blank" rel="noopener noreferrer">#2634</a>.</li>
<li>Add Docker compatibility button using flatpak-spawn <a href="https://github.com/containers/podman-desktop/pull/1925" target="_blank" rel="noopener noreferrer">#1925</a>.</li>
<li>Improve UI consistency of Pull Image page <a href="https://github.com/containers/podman-desktop/pull/2604" target="_blank" rel="noopener noreferrer">#2604</a>.</li>
</ul>
<hr>
<h2 class="anchor anchorWithStickyNavbar_JmGV" id="notable-bug-fixes">Notable Bug Fixes<a href="https://podman-desktop.io/blog/podman-desktop-release-1.1#notable-bug-fixes" class="hash-link" aria-label="Direct link to Notable Bug Fixes" title="Direct link to Notable Bug Fixes"></a></h2>
<ul>
<li>Could not install extensions on Windows 10 <a href="https://github.com/containers/podman-desktop/pull/2762" target="_blank" rel="noopener noreferrer">#2762</a>.</li>
<li>Could not use locally built images on Kubernetes <a href="https://github.com/containers/podman-desktop/pull/2710" target="_blank" rel="noopener noreferrer">#2710</a>.</li>
<li>Dashboard still suggests update after installation <a href="https://github.com/containers/podman-desktop/pull/2648" target="_blank" rel="noopener noreferrer">#2648</a>.</li>
<li>Could not Play Kubernetes YAML to Podman on Windows <a href="https://github.com/containers/podman-desktop/pull/2594" target="_blank" rel="noopener noreferrer">#2594</a>.</li>
<li>Pod label wasn't always shown in list <a href="https://github.com/containers/podman-desktop/pull/2614" target="_blank" rel="noopener noreferrer">#2614</a>.</li>
<li>Dashboard button state was resetting <a href="https://github.com/containers/podman-desktop/pull/2584" target="_blank" rel="noopener noreferrer">#2584</a>.</li>
<li>Change checkbox style so they don't look like stop buttons <a href="https://github.com/containers/podman-desktop/pull/2723" target="_blank" rel="noopener noreferrer">#2723</a>.</li>
</ul>
<hr>
<h2 class="anchor anchorWithStickyNavbar_JmGV" id="community-thank-you">Community Thank You<a href="https://podman-desktop.io/blog/podman-desktop-release-1.1#community-thank-you" class="hash-link" aria-label="Direct link to Community Thank You" title="Direct link to Community Thank You"></a></h2>
<p>🎉 Wed like to say a big thank you to everyone who helped to make Podman Desktop even better. In this
sprint we received pull requests from the following people:</p>
<ul>
<li><a href="https://github.com/fatelei" target="_blank" rel="noopener noreferrer">wangxiaolei</a> in <a href="https://github.com/containers/podman-desktop/pull/2602" target="_blank" rel="noopener noreferrer">#2602 - Add meaningful tooltips to build, pull, prune buttons</a></li>
<li><a href="https://github.com/AsciiWolf" target="_blank" rel="noopener noreferrer">AsciiWolf</a> in <a href="https://github.com/containers/podman-desktop/pull/2607" target="_blank" rel="noopener noreferrer">#2607 - fix typing error in Flathub name</a> and <a href="https://github.com/containers/podman-desktop/pull/2609" target="_blank" rel="noopener noreferrer">#2609 - fix Flatpak install instructions</a></li>
<li><a href="https://github.com/afbjorklund" target="_blank" rel="noopener noreferrer">Anders Björklund</a> in <a href="https://github.com/containers/podman-desktop/pull/2674" target="_blank" rel="noopener noreferrer">#2674 - Select engine for Lima provider</a></li>
</ul>
<hr>
<h2 class="anchor anchorWithStickyNavbar_JmGV" id="final-notes">Final notes<a href="https://podman-desktop.io/blog/podman-desktop-release-1.1#final-notes" class="hash-link" aria-label="Direct link to Final notes" title="Direct link to Final notes"></a></h2>
<p>The complete list of issues fixed in this release is available <a href="https://github.com/containers/podman-desktop/issues?q=is%3Aclosed+milestone%3A1.1.0" target="_blank" rel="noopener noreferrer">here</a> and <a href="https://github.com/containers/podman-desktop/issues?q=is%3Aclosed+milestone%3A1.1.0" target="_blank" rel="noopener noreferrer">here</a>.</p>
<p>Get the latest release from the <a href="https://podman-desktop.io/downloads">Downloads</a> section of the website and boost your development journey with Podman Desktop. Additionally, visit the <a href="https://github.com/containers/podman-desktop" target="_blank" rel="noopener noreferrer">GitHub repository</a> and see how you can help us make Podman Desktop better.</p>]]></content:encoded>
<category>podman-desktop</category>
<category>release</category>
<category>kubernetes</category>
<category>openshift</category>
</item>
<item>
<title><![CDATA[Release Notes - Podman Desktop 1.0]]></title>
<link>https://podman-desktop.io/blog/podman-desktop-release-1.0</link>
<guid>https://podman-desktop.io/blog/podman-desktop-release-1.0</guid>
<pubDate>Wed, 17 May 2023 00:00:00 GMT</pubDate>
<description><![CDATA[Podman Desktop 1.0 has been released!]]></description>
<content:encoded><![CDATA[<p>Podman Desktop 1.0 Release! 🎉</p>
<p>We still have many things planned, but with a little polish and a few more bug fixes we
felt we've reached a level of maturity and it is now time to declare our 1.0 release.</p>
<p>Thank you to everyone who has been with us on this journey so far! Please keep the
feedback coming!</p>
<ul>
<li><strong>Highlighting Featured Extensions</strong>: Easily find and install new extensions.</li>
<li><strong>Featured Extensions</strong>: Two new extensions supporting OpenShift.</li>
<li><strong>Podman Machine as Root</strong>: Ability to run a Podman machine as root.</li>
<li><strong>UX and UI Improvements</strong>: Opening external websites, editing numbers, and tooltips.</li>
</ul>
<p>Podman Desktop 1.0 is now available. <a href="https://podman-desktop.io/downloads">Click here to download it</a>!</p>
<p><img loading="lazy" alt="Podman-desktop-1-0-hero" src="https://podman-desktop.io/assets/images/podman-desktop-release-1.0-b1e0008ec8a98fcc5628fa05b667d802.jpg" width="1620" height="1080" class="img_SS3x"></p>
<hr>
<h2 class="anchor anchorWithStickyNavbar_JmGV" id="release-details">Release Details<a href="https://podman-desktop.io/blog/podman-desktop-release-1.0#release-details" class="hash-link" aria-label="Direct link to Release Details" title="Direct link to Release Details"></a></h2>
<h3 class="anchor anchorWithStickyNavbar_JmGV" id="highlighting-featured-extensions">Highlighting Featured Extensions<a href="https://podman-desktop.io/blog/podman-desktop-release-1.0#highlighting-featured-extensions" class="hash-link" aria-label="Direct link to Highlighting Featured Extensions" title="Direct link to Highlighting Featured Extensions"></a></h3>
<p>A critical part of our vision for Podman Desktop is the ability to install extensions to
support additional container engines, Kubernetes providers, or other tools. However, it
has not been easy to discover new extensions.</p>
<p>With 1.0 we show a list of featured extensions in the <strong>Welcome</strong>
<a href="https://github.com/containers/podman-desktop/pull/2354" target="_blank" rel="noopener noreferrer">#2354</a>, the <strong>Dashboard</strong> and in
<strong><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="gear" class="svg-inline--fa fa-gear fa-lg" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path fill="currentColor" d="M495.9 166.6c3.2 8.7 .5 18.4-6.4 24.6l-43.3 39.4c1.1 8.3 1.7 16.8 1.7 25.4s-.6 17.1-1.7 25.4l43.3 39.4c6.9 6.2 9.6 15.9 6.4 24.6c-4.4 11.9-9.7 23.3-15.8 34.3l-4.7 8.1c-6.6 11-14 21.4-22.1 31.2c-5.9 7.2-15.7 9.6-24.5 6.8l-55.7-17.7c-13.4 10.3-28.2 18.9-44 25.4l-12.5 57.1c-2 9.1-9 16.3-18.2 17.8c-13.8 2.3-28 3.5-42.5 3.5s-28.7-1.2-42.5-3.5c-9.2-1.5-16.2-8.7-18.2-17.8l-12.5-57.1c-15.8-6.5-30.6-15.1-44-25.4L83.1 425.9c-8.8 2.8-18.6 .3-24.5-6.8c-8.1-9.8-15.5-20.2-22.1-31.2l-4.7-8.1c-6.1-11-11.4-22.4-15.8-34.3c-3.2-8.7-.5-18.4 6.4-24.6l43.3-39.4C64.6 273.1 64 264.6 64 256s.6-17.1 1.7-25.4L22.4 191.2c-6.9-6.2-9.6-15.9-6.4-24.6c4.4-11.9 9.7-23.3 15.8-34.3l4.7-8.1c6.6-11 14-21.4 22.1-31.2c5.9-7.2 15.7-9.6 24.5-6.8l55.7 17.7c13.4-10.3 28.2-18.9 44-25.4l12.5-57.1c2-9.1 9-16.3 18.2-17.8C227.3 1.2 241.5 0 256 0s28.7 1.2 42.5 3.5c9.2 1.5 16.2 8.7 18.2 17.8l12.5 57.1c15.8 6.5 30.6 15.1 44 25.4l55.7-17.7c8.8-2.8 18.6-.3 24.5 6.8c8.1 9.8 15.5 20.2 22.1 31.2l4.7 8.1c6.1 11 11.4 22.4 15.8 34.3zM256 336a80 80 0 1 0 0-160 80 80 0 1 0 0 160z"></path></svg> Settings &gt; Extensions</strong>
<a href="https://github.com/containers/podman-desktop/pull/2355" target="_blank" rel="noopener noreferrer">#2355</a>. Check out the new
extensions for <strong>Red Hat OpenShift Local</strong> and the <strong>Developer Sandbox for Red Hat OpenShift</strong>!</p>
<p><img loading="lazy" alt="Featured extensions" src="https://podman-desktop.io/assets/images/featured-extensions-52dff6ccab42c42fd50f37bdf870f19f.png" width="1926" height="474" class="img_SS3x"></p>
<h3 class="anchor anchorWithStickyNavbar_JmGV" id="featured-extensions">Featured Extensions<a href="https://podman-desktop.io/blog/podman-desktop-release-1.0#featured-extensions" class="hash-link" aria-label="Direct link to Featured Extensions" title="Direct link to Featured Extensions"></a></h3>
<p>Speaking of extensions, let's take a minute to turn the spotlight on these two!</p>
<p>Have another idea for extending Podman Desktop? We would love to hear from you or see
what you can create with the <a href="https://podman-desktop.io/docs/extensions">Extension documentation</a>,
and feature your extension here.</p>
<h4 class="anchor anchorWithStickyNavbar_JmGV" id="red-hat-openshift-local">Red Hat OpenShift Local<a href="https://podman-desktop.io/blog/podman-desktop-release-1.0#red-hat-openshift-local" class="hash-link" aria-label="Direct link to Red Hat OpenShift Local" title="Direct link to Red Hat OpenShift Local"></a></h4>
<p>OpenShift Local is a fully-featured single-node OpenShift cluster designed to run on your local computer.
With this extension you can install, start/stop, and deploy pods or YAML to OpenShift Local,
allowing you to test your applications on a full OpenShift environment, ensuring a consistent
experience between development, test, and production.</p>
<p>The recent addition of the MicroShift preset provides a lighter, optimized option that
starts faster and uses less resources for deployments that still want OpenShift compatibility
without the full set of OpenShift services.</p>
<p><img loading="lazy" alt="OpenShift Local" src="https://podman-desktop.io/assets/images/openshift-local-39a086441b856524414c7a8d9370ce14.png" width="1496" height="350" class="img_SS3x"></p>
<h4 class="anchor anchorWithStickyNavbar_JmGV" id="developer-sandbox-for-red-hat-openshift">Developer Sandbox for Red Hat OpenShift<a href="https://podman-desktop.io/blog/podman-desktop-release-1.0#developer-sandbox-for-red-hat-openshift" class="hash-link" aria-label="Direct link to Developer Sandbox for Red Hat OpenShift" title="Direct link to Developer Sandbox for Red Hat OpenShift"></a></h4>
<p>The OpenShift Developer Sandbox is a free, cloud-based OpenShift environment that allows developers to
create, build, and deploy applications to OpenShift for 30 days. With this extension you can sign up
and easily deploy pods or YAML to a hosted OpenShift environment without a local installation or
leaving Podman Desktop.</p>
<p><img loading="lazy" alt="Developer Sandbox" src="https://podman-desktop.io/assets/images/sandbox-1957747367cc8134b7a178347a952886.png" width="1484" height="1016" class="img_SS3x"></p>
<h3 class="anchor anchorWithStickyNavbar_JmGV" id="podman-machine-as-root">Podman Machine as Root<a href="https://podman-desktop.io/blog/podman-desktop-release-1.0#podman-machine-as-root" class="hash-link" aria-label="Direct link to Podman Machine as Root" title="Direct link to Podman Machine as Root"></a></h3>
<p>When creating a Podman machine you can now decide to run as root <a href="https://github.com/containers/podman-desktop/pull/2427" target="_blank" rel="noopener noreferrer">#2427</a>. This is a prerequisite for some scenarios, such as running Kind on Windows.</p>
<p><img loading="lazy" alt="Podman machine as root" src="https://podman-desktop.io/assets/images/podman-root-afa83c0f605f6db26dc237d45ccdbe94.png" width="350" height="122" class="img_SS3x"></p>
<h3 class="anchor anchorWithStickyNavbar_JmGV" id="other-ui-and-ux-improvements">Other UI and UX Improvements<a href="https://podman-desktop.io/blog/podman-desktop-release-1.0#other-ui-and-ux-improvements" class="hash-link" aria-label="Direct link to Other UI and UX Improvements" title="Direct link to Other UI and UX Improvements"></a></h3>
<h4 class="anchor anchorWithStickyNavbar_JmGV" id="prompt-to-open-external-website">Prompt to Open External Website<a href="https://podman-desktop.io/blog/podman-desktop-release-1.0#prompt-to-open-external-website" class="hash-link" aria-label="Direct link to Prompt to Open External Website" title="Direct link to Prompt to Open External Website"></a></h4>
<p>In the previous release links to external websites were blocked due to the security risk.
In 1.0 you can click to see the URL and have the option of opening or copying it
<a href="https://github.com/containers/podman-desktop/pull/2414" target="_blank" rel="noopener noreferrer">#2414</a>.</p>
<p><img loading="lazy" alt="External link dialog" src="https://podman-desktop.io/assets/images/external-link-d70735d4fe675915dd25761daf1f1684.png" width="1102" height="434" class="img_SS3x"></p>
<h4 class="anchor anchorWithStickyNavbar_JmGV" id="editable-numeric-preferences">Editable Numeric Preferences<a href="https://podman-desktop.io/blog/podman-desktop-release-1.0#editable-numeric-preferences" class="hash-link" aria-label="Direct link to Editable Numeric Preferences" title="Direct link to Editable Numeric Preferences"></a></h4>
<p>Tired of clicking +, +, +? Us too. Numeric preferences are now editable so
you can directly enter the value you want
<a href="https://github.com/containers/podman-desktop/pull/2368" target="_blank" rel="noopener noreferrer">#2368</a>.</p>
<p><img loading="lazy" alt="Editing numbers" src="https://podman-desktop.io/assets/images/edit-number-8da457a123eb3cd6afc3dca7eda00870.png" width="1334" height="192" class="img_SS3x"></p>
<h4 class="anchor anchorWithStickyNavbar_JmGV" id="navigation-tooltips">Navigation tooltips<a href="https://podman-desktop.io/blog/podman-desktop-release-1.0#navigation-tooltips" class="hash-link" aria-label="Direct link to Navigation tooltips" title="Direct link to Navigation tooltips"></a></h4>
<p>We like our new navigation bar, but the tooltips were slow to appear. This made it harder for new
users to discover the pages and for power users to see the container/pod/image counts. The
tooltips are now a little nicer and appear immediately
<a href="https://github.com/containers/podman-desktop/pull/2286" target="_blank" rel="noopener noreferrer">#2286</a>.</p>
<p><img loading="lazy" alt="Navigation tooltips" src="https://podman-desktop.io/assets/images/nav-tooltips-000f080b595ddbdd177b7004f23aea5b.png" width="734" height="192" class="img_SS3x"></p>
<hr>
<h2 class="anchor anchorWithStickyNavbar_JmGV" id="other-notable-enhancements">Other Notable Enhancements<a href="https://podman-desktop.io/blog/podman-desktop-release-1.0#other-notable-enhancements" class="hash-link" aria-label="Direct link to Other Notable Enhancements" title="Direct link to Other Notable Enhancements"></a></h2>
<ul>
<li>
<p>If you use a non-default Podman machine you are now prompted to make it the default, so
that command line tools will use the same machine <a href="https://github.com/containers/podman-desktop/pull/2205" target="_blank" rel="noopener noreferrer">#2205</a>.</p>
</li>
<li>
<p>Extensions can now be installed without requiring a running local container engine
<a href="https://github.com/containers/podman-desktop/pull/2273" target="_blank" rel="noopener noreferrer">#2273</a>.</p>
</li>
<li>
<p>When extensions fail to load there is a new state (failed!) and an error message
to help you fix or report the problem <a href="https://github.com/containers/podman-desktop/pull/2424" target="_blank" rel="noopener noreferrer">#2424</a>.</p>
</li>
<li>
<p>The showInputBox API has support for Markdown <a href="https://github.com/containers/podman-desktop/pull/2418" target="_blank" rel="noopener noreferrer">#2418</a>.</p>
</li>
</ul>
<hr>
<h2 class="anchor anchorWithStickyNavbar_JmGV" id="notable-bug-fixes">Notable Bug Fixes<a href="https://podman-desktop.io/blog/podman-desktop-release-1.0#notable-bug-fixes" class="hash-link" aria-label="Direct link to Notable Bug Fixes" title="Direct link to Notable Bug Fixes"></a></h2>
<ul>
<li>Fixed shared status when using multiple Podman 4.5 machines <a href="https://github.com/containers/podman-desktop/pull/2441" target="_blank" rel="noopener noreferrer">#2441</a>.</li>
<li>Fixed hang on exit when telemetry is unreachable <a href="https://github.com/containers/podman-desktop/pull/2431" target="_blank" rel="noopener noreferrer">#2431</a>.</li>
<li>Reduced initial Podman REST API calls to improve performance <a href="https://github.com/containers/podman-desktop/pull/2419" target="_blank" rel="noopener noreferrer">#2419</a>.</li>
<li><strong>Play Kubernetes YAML</strong> now honors the namespace <a href="https://github.com/containers/podman-desktop/pull/2509" target="_blank" rel="noopener noreferrer">#2509</a>.</li>
<li><strong>Container</strong> list was not remembering expand/collapsed status <a href="https://github.com/containers/podman-desktop/pull/2491" target="_blank" rel="noopener noreferrer">#2491</a>.</li>
<li>Clear previous error when installing Docker extension <a href="https://github.com/containers/podman-desktop/pull/2469" target="_blank" rel="noopener noreferrer">#2469</a>.</li>
<li>Ensure correct path with running Kind CLI <a href="https://github.com/containers/podman-desktop/pull/2455" target="_blank" rel="noopener noreferrer">#2455</a>.</li>
<li>Use IPv4 over IPv6 by default <a href="https://github.com/containers/podman-desktop/pull/2398" target="_blank" rel="noopener noreferrer">#2398</a>.</li>
<li>When changing the Kubernetes pod name, change the app name to match <a href="https://github.com/containers/podman-desktop/pull/2389" target="_blank" rel="noopener noreferrer">#2389</a>.</li>
<li>Fixed incorrect pod status in <strong>Containers</strong> view <a href="https://github.com/containers/podman-desktop/pull/2387" target="_blank" rel="noopener noreferrer">#2387</a>.</li>
<li><strong>Dashboard</strong> wasn't correctly refreshing Podman status <a href="https://github.com/containers/podman-desktop/pull/2359" target="_blank" rel="noopener noreferrer">#2359</a>.</li>
</ul>
<hr>
<h2 class="anchor anchorWithStickyNavbar_JmGV" id="community-thank-you">Community Thank You<a href="https://podman-desktop.io/blog/podman-desktop-release-1.0#community-thank-you" class="hash-link" aria-label="Direct link to Community Thank You" title="Direct link to Community Thank You"></a></h2>
<p>🎉 Wed like to say a big thank you to everyone who helped to make Podman Desktop even better. In this final
sprint we received pull requests from the following people:</p>
<ul>
<li><a href="https://github.com/TahaAttari" target="_blank" rel="noopener noreferrer">Taha Attari</a> in <a href="https://github.com/containers/podman-desktop/pull/2470" target="_blank" rel="noopener noreferrer">#2470 - Update docker command in importing-saved-containers.md</a></li>
<li><a href="https://github.com/n1hility" target="_blank" rel="noopener noreferrer">Jason Greene</a> in <a href="https://github.com/containers/podman-desktop/pull/2431" target="_blank" rel="noopener noreferrer">#2431 - Fix hang on exit when telemetry endpoint is unreachable</a></li>
<li><a href="https://github.com/afbjorklund" target="_blank" rel="noopener noreferrer">Anders Björklund</a> in <a href="https://github.com/containers/podman-desktop/pull/2571" target="_blank" rel="noopener noreferrer">#2571 - Fix the location of the lima podman socket</a> and <a href="https://github.com/containers/podman-desktop/pull/2572" target="_blank" rel="noopener noreferrer">#2572 - Fix the state of the lima container provider</a></li>
<li><a href="https://github.com/tuckerrc" target="_blank" rel="noopener noreferrer">Tucker Chapman</a> in <a href="https://github.com/containers/podman-desktop/pull/2567" target="_blank" rel="noopener noreferrer">#2567 - Add example image name in placeholder</a></li>
</ul>
<p>There are now a total of 54 people (and two bots!) who have contributed PRs to Podman Desktop, and we'd
like to extend an extra thanks to all of those outside of the immediate development team who contributed
to get us here:</p>
<p><a href="https://github.com/afbjorklund" target="_blank" rel="noopener noreferrer">afbjorklund</a>,
<a href="https://github.com/alv67" target="_blank" rel="noopener noreferrer">alv67</a>,
<a href="https://github.com/anjannath" target="_blank" rel="noopener noreferrer">anjannath</a>,
<a href="https://github.com/ankanroy-code" target="_blank" rel="noopener noreferrer">ankanroy-code</a>,
<a href="https://github.com/arixmkii" target="_blank" rel="noopener noreferrer">arixmkii</a>,
<a href="https://github.com/cblecker" target="_blank" rel="noopener noreferrer">cblecker</a>,
<a href="https://github.com/cfergeau" target="_blank" rel="noopener noreferrer">cfergeau</a>,
<a href="https://github.com/chevdor" target="_blank" rel="noopener noreferrer">chevdor</a>,
<a href="https://github.com/chrisjsimpson" target="_blank" rel="noopener noreferrer">chrisjsimpson</a>,
<a href="https://github.com/cu8code" target="_blank" rel="noopener noreferrer">cu8code</a>,
<a href="https://github.com/doehyunbaek" target="_blank" rel="noopener noreferrer">doehyunbaek</a>,
<a href="https://github.com/dylanmtaylor" target="_blank" rel="noopener noreferrer">dylanmtaylor</a>,
<a href="https://github.com/eidottermihi" target="_blank" rel="noopener noreferrer">eidottermihi</a>,
<a href="https://github.com/elervik" target="_blank" rel="noopener noreferrer">elervik</a>,
<a href="https://github.com/emmanuelbernard" target="_blank" rel="noopener noreferrer">emmanuelbernard</a>,
<a href="https://github.com/evanfpearson" target="_blank" rel="noopener noreferrer">evanfpearson</a>,
<a href="https://github.com/gorkem" target="_blank" rel="noopener noreferrer">gorkem</a>,
<a href="https://github.com/idjohnson" target="_blank" rel="noopener noreferrer">idjohnson</a>,
<a href="https://github.com/imphil" target="_blank" rel="noopener noreferrer">imphil</a>,
<a href="https://github.com/iongion" target="_blank" rel="noopener noreferrer">iongion</a>,
<a href="https://github.com/jlosito" target="_blank" rel="noopener noreferrer">jlosito</a>,
<a href="https://github.com/KevinAtSesam" target="_blank" rel="noopener noreferrer">KevinAtSesam</a>,
<a href="https://github.com/lsm5" target="_blank" rel="noopener noreferrer">lsm5</a>,
<a href="https://github.com/Mitch9378" target="_blank" rel="noopener noreferrer">Mitch9378</a>,
<a href="https://github.com/n1hility" target="_blank" rel="noopener noreferrer">n1hility</a>,
<a href="https://github.com/osslate" target="_blank" rel="noopener noreferrer">osslate</a>,
<a href="https://github.com/PatentLobster" target="_blank" rel="noopener noreferrer">PatentLobster</a>,
<a href="https://github.com/pwright" target="_blank" rel="noopener noreferrer">pwright</a>,
<a href="https://github.com/rdwz" target="_blank" rel="noopener noreferrer">rdwz</a>,
<a href="https://github.com/redhatrises" target="_blank" rel="noopener noreferrer">redhatrises</a>,
<a href="https://github.com/rhatdan" target="_blank" rel="noopener noreferrer">rhatdan</a>,
<a href="https://github.com/RobotSail" target="_blank" rel="noopener noreferrer">RobotSail</a>,
<a href="https://github.com/rohit-rambade" target="_blank" rel="noopener noreferrer">rohit-rambade</a>,
<a href="https://github.com/rsvoboda" target="_blank" rel="noopener noreferrer">rsvoboda</a>,
<a href="https://github.com/sfrunza13" target="_blank" rel="noopener noreferrer">sfrunza13</a>,
<a href="https://github.com/shemanaev" target="_blank" rel="noopener noreferrer">shemanaev</a>,
<a href="https://github.com/sstosh" target="_blank" rel="noopener noreferrer">sstosh</a>,
<a href="https://github.com/stickster" target="_blank" rel="noopener noreferrer">stickster</a>,
<a href="https://github.com/TahaAttari" target="_blank" rel="noopener noreferrer">TahaAttari</a>,
<a href="https://github.com/ths83" target="_blank" rel="noopener noreferrer">ths83</a>,
<a href="https://github.com/Tony-Sol" target="_blank" rel="noopener noreferrer">Tony-Sol</a>,
<a href="https://github.com/tuckerrc" target="_blank" rel="noopener noreferrer">tuckerrc</a>,
<a href="https://github.com/ucomesdag" target="_blank" rel="noopener noreferrer">ucomesdag</a>,
<a href="https://github.com/xbabalov" target="_blank" rel="noopener noreferrer">xbabalov</a>,
zezo2019.</p>
<hr>
<h2 class="anchor anchorWithStickyNavbar_JmGV" id="final-notes">Final notes<a href="https://podman-desktop.io/blog/podman-desktop-release-1.0#final-notes" class="hash-link" aria-label="Direct link to Final notes" title="Direct link to Final notes"></a></h2>
<p>The complete list of issues fixed in this release is available <a href="https://github.com/containers/podman-desktop/issues?q=is%3Aclosed+milestone%3A1.0.0" target="_blank" rel="noopener noreferrer">here</a> and <a href="https://github.com/containers/podman-desktop/issues?q=is%3Aclosed+milestone%3A1.0.1" target="_blank" rel="noopener noreferrer">here</a>.</p>
<p>Get the latest release from the <a href="https://podman-desktop.io/downloads">Downloads</a> section of the website and boost your development journey with Podman Desktop. Additionally, visit the <a href="https://github.com/containers/podman-desktop" target="_blank" rel="noopener noreferrer">GitHub repository</a> and see how you can help us make Podman Desktop better.</p>]]></content:encoded>
<category>podman-desktop</category>
<category>release</category>
<category>kubernetes</category>
<category>kind</category>
<category>openshift</category>
</item>
<item>
<title><![CDATA[Release Notes - Podman Desktop 0.15]]></title>
<link>https://podman-desktop.io/blog/podman-desktop-release-0.15</link>
<guid>https://podman-desktop.io/blog/podman-desktop-release-0.15</guid>
<pubDate>Tue, 02 May 2023 00:00:00 GMT</pubDate>
<description><![CDATA[Podman Desktop 0.15 has been released!]]></description>
<content:encoded><![CDATA[<p>Podman Desktop 0.15 - Cleanliness is next to Podliness!</p>
<p>It has only been two weeks since our last release, but we really wanted to complete a few scenarios,
fix a few bugs, and show off several design updates and UI improvements that we have been working on.</p>
<ul>
<li><strong>Podman Version</strong>: Podman 4.5 now included in Windows and Mac installers.</li>
<li><strong>Kind Ingress</strong>: Creating an ingress to expose services outside the Kind cluster.</li>
<li><strong>Podliness</strong>: Ability to choose external ports when podifying containers.</li>
<li><strong>Cleanliness</strong>: New navigation bar, dialog, and palette update.</li>
<li><strong>UX and UI Improvements</strong>: Markdown support for extensions.</li>
</ul>
<p>Podman Desktop 0.15 is now available. <a href="https://podman-desktop.io/downloads">Click here to download it</a>!</p>
<p><img loading="lazy" alt="Podman-desktop-0-15-hero" src="https://podman-desktop.io/assets/images/podman-desktop-release-0.15-89cd5f136ad85c15bc5b4d16a919140a.webp" width="1920" height="1432" class="img_SS3x"></p>
<hr>
<h2 class="anchor anchorWithStickyNavbar_JmGV" id="release-details">Release Details<a href="https://podman-desktop.io/blog/podman-desktop-release-0.15#release-details" class="hash-link" aria-label="Direct link to Release Details" title="Direct link to Release Details"></a></h2>
<h3 class="anchor anchorWithStickyNavbar_JmGV" id="update-to-podman-v45o">Update to Podman v4.5.O<a href="https://podman-desktop.io/blog/podman-desktop-release-0.15#update-to-podman-v45o" class="hash-link" aria-label="Direct link to Update to Podman v4.5.O" title="Direct link to Update to Podman v4.5.O"></a></h3>
<p>Podman Desktop 0.15 embeds <a href="https://github.com/containers/podman/releases/tag/v4.5.0" target="_blank" rel="noopener noreferrer">Podman 4.5.0</a> in
Windows and macOS installers <a href="https://github.com/containers/podman-desktop/issues/2115" target="_blank" rel="noopener noreferrer">#2115</a>.</p>
<h3 class="anchor anchorWithStickyNavbar_JmGV" id="kind-ingress">Kind Ingress<a href="https://podman-desktop.io/blog/podman-desktop-release-0.15#kind-ingress" class="hash-link" aria-label="Direct link to Kind Ingress" title="Direct link to Kind Ingress"></a></h3>
<p>Wait a minute, didn't we enable this last release? Well yes, last time we did add support for installing
the Contour ingress controller on Kind <a href="https://github.com/containers/podman-desktop/issues/1675" target="_blank" rel="noopener noreferrer">#1675</a>,
but you still couldn't access your containers without the corresponding ingress.</p>
<p>This release adds a simple checkbox you can use when deploying to Kind to create an ingress and
make your service accessible <a href="https://github.com/containers/podman-desktop/issues/1322" target="_blank" rel="noopener noreferrer">#1322</a>.</p>
<div style="width:100%;height:100%"></div>
<h3 class="anchor anchorWithStickyNavbar_JmGV" id="podliness-ability-to-choose-external-ports-when-podifying-containers">Podliness: Ability to Choose External Ports when Podifying Containers<a href="https://podman-desktop.io/blog/podman-desktop-release-0.15#podliness-ability-to-choose-external-ports-when-podifying-containers" class="hash-link" aria-label="Direct link to Podliness: Ability to Choose External Ports when Podifying Containers" title="Direct link to Podliness: Ability to Choose External Ports when Podifying Containers"></a></h3>
<p>When you create a pod from of a set of containers (Podifying!), you probably don't want to expose every
single port from every container to the world. With an updated panel you can now see which ports each container
exposes, pick which should remain visible outside the pod, and which are for internal use
<a href="https://github.com/containers/podman-desktop/pull/2232" target="_blank" rel="noopener noreferrer">#2232</a>.</p>
<p><img loading="lazy" src="https://user-images.githubusercontent.com/49404737/234527674-ed14f52c-8f66-445f-8038-c8135bb61136.gif" alt="Podify page" class="img_SS3x"></p>
<h3 class="anchor anchorWithStickyNavbar_JmGV" id="cleanliness-new-navigation-bar-dialogs-and-palette">Cleanliness: New Navigation Bar, Dialogs, and Palette<a href="https://podman-desktop.io/blog/podman-desktop-release-0.15#cleanliness-new-navigation-bar-dialogs-and-palette" class="hash-link" aria-label="Direct link to Cleanliness: New Navigation Bar, Dialogs, and Palette" title="Direct link to Cleanliness: New Navigation Bar, Dialogs, and Palette"></a></h3>
<p>It was time to catch up on some design ideas and do some UI cleanup!</p>
<h4 class="anchor anchorWithStickyNavbar_JmGV" id="new-navgation-bar">New Navgation Bar<a href="https://podman-desktop.io/blog/podman-desktop-release-0.15#new-navgation-bar" class="hash-link" aria-label="Direct link to New Navgation Bar" title="Direct link to New Navgation Bar"></a></h4>
<p>The navigation bar is now always fixed on the left size, without labels. This opens up more space
for the content on each page, and is easier to jump in and out of <strong><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="gear" class="svg-inline--fa fa-gear fa-lg" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path fill="currentColor" d="M495.9 166.6c3.2 8.7 .5 18.4-6.4 24.6l-43.3 39.4c1.1 8.3 1.7 16.8 1.7 25.4s-.6 17.1-1.7 25.4l43.3 39.4c6.9 6.2 9.6 15.9 6.4 24.6c-4.4 11.9-9.7 23.3-15.8 34.3l-4.7 8.1c-6.6 11-14 21.4-22.1 31.2c-5.9 7.2-15.7 9.6-24.5 6.8l-55.7-17.7c-13.4 10.3-28.2 18.9-44 25.4l-12.5 57.1c-2 9.1-9 16.3-18.2 17.8c-13.8 2.3-28 3.5-42.5 3.5s-28.7-1.2-42.5-3.5c-9.2-1.5-16.2-8.7-18.2-17.8l-12.5-57.1c-15.8-6.5-30.6-15.1-44-25.4L83.1 425.9c-8.8 2.8-18.6 .3-24.5-6.8c-8.1-9.8-15.5-20.2-22.1-31.2l-4.7-8.1c-6.1-11-11.4-22.4-15.8-34.3c-3.2-8.7-.5-18.4 6.4-24.6l43.3-39.4C64.6 273.1 64 264.6 64 256s.6-17.1 1.7-25.4L22.4 191.2c-6.9-6.2-9.6-15.9-6.4-24.6c4.4-11.9 9.7-23.3 15.8-34.3l4.7-8.1c6.6-11 14-21.4 22.1-31.2c5.9-7.2 15.7-9.6 24.5-6.8l55.7 17.7c13.4-10.3 28.2-18.9 44-25.4l12.5-57.1c2-9.1 9-16.3 18.2-17.8C227.3 1.2 241.5 0 256 0s28.7 1.2 42.5 3.5c9.2 1.5 16.2 8.7 18.2 17.8l12.5 57.1c15.8 6.5 30.6 15.1 44 25.4l55.7-17.7c8.8-2.8 18.6-.3 24.5 6.8c8.1 9.8 15.5 20.2 22.1 31.2l4.7 8.1c6.1 11 11.4 22.4 15.8 34.3zM256 336a80 80 0 1 0 0-160 80 80 0 1 0 0 160z"></path></svg> Settings</strong>.
<a href="https://github.com/containers/podman-desktop/issues/2167" target="_blank" rel="noopener noreferrer">#2167</a></p>
<p><img loading="lazy" alt="Navigation bar" src="https://podman-desktop.io/assets/images/navigation-a8912eb003f2c50ed0436cc5cb07be77.png" width="252" height="606" class="img_SS3x"></p>
<h4 class="anchor anchorWithStickyNavbar_JmGV" id="updated-dialogs">Updated Dialogs<a href="https://podman-desktop.io/blog/podman-desktop-release-0.15#updated-dialogs" class="hash-link" aria-label="Direct link to Updated Dialogs" title="Direct link to Updated Dialogs"></a></h4>
<p>We wanted messages and dialog boxes to feel a bit more integrated, so we have a new message box
<a href="https://github.com/containers/podman-desktop/pull/1808" target="_blank" rel="noopener noreferrer">#1808</a> and use it for all dialogs opened by
extensions, pruning containers/pods/images/volumes <a href="https://github.com/containers/podman-desktop/pull/2138" target="_blank" rel="noopener noreferrer">#2138</a>,
and updating Podman Desktop itself <a href="https://github.com/containers/podman-desktop/pull/2249" target="_blank" rel="noopener noreferrer">#2249</a>.</p>
<p><img loading="lazy" alt="Dialog" src="https://podman-desktop.io/assets/images/dialog-a7641617566984fb155ab6060378c0e7.png" width="1114" height="454" class="img_SS3x"></p>
<h4 class="anchor anchorWithStickyNavbar_JmGV" id="colors">Colors<a href="https://podman-desktop.io/blog/podman-desktop-release-0.15#colors" class="hash-link" aria-label="Direct link to Colors" title="Direct link to Colors"></a></h4>
<p>We spent some time tweaking colors and closing on our final palette
<a href="https://github.com/containers/podman-desktop/pull/2199" target="_blank" rel="noopener noreferrer">#2199</a>, updating the colors in the terminal &amp; detail page
<a href="https://github.com/containers/podman-desktop/pull/2222" target="_blank" rel="noopener noreferrer">#2222</a>, tweaking the navigation and main page colors
<a href="https://github.com/containers/podman-desktop/pull/2223" target="_blank" rel="noopener noreferrer">#2223</a>,
and improving the look of forms <a href="https://github.com/containers/podman-desktop/issues/2156" target="_blank" rel="noopener noreferrer">#2156</a>.</p>
<p>We're not done yet, but hopefully you will notice a more polished, consistent, good-looking application!</p>
<h3 class="anchor anchorWithStickyNavbar_JmGV" id="other-ui-and-ux-improvements">Other UI and UX Improvements<a href="https://podman-desktop.io/blog/podman-desktop-release-0.15#other-ui-and-ux-improvements" class="hash-link" aria-label="Direct link to Other UI and UX Improvements" title="Direct link to Other UI and UX Improvements"></a></h3>
<h4 class="anchor anchorWithStickyNavbar_JmGV" id="markdown-support-for-extensions">Markdown Support for Extensions<a href="https://podman-desktop.io/blog/podman-desktop-release-0.15#markdown-support-for-extensions" class="hash-link" aria-label="Direct link to Markdown Support for Extensions" title="Direct link to Markdown Support for Extensions"></a></h4>
<p>We added a new component to display markdown <a href="https://github.com/containers/podman-desktop/pull/2219" target="_blank" rel="noopener noreferrer">#2219</a> and
enabled it in preferences <a href="https://github.com/containers/podman-desktop/pull/2253" target="_blank" rel="noopener noreferrer">#2253</a>, and
provider properties/creation pages <a href="https://github.com/containers/podman-desktop/issues/2152" target="_blank" rel="noopener noreferrer">#2152</a>.
We can now embed links and other formatting in preferences, and extensions can use them in many places, for example:</p>
<p><img loading="lazy" alt="Markdown" src="https://podman-desktop.io/assets/images/markdown-62e7791bc0cf89938d344d6bdacfb3a0.png" width="1620" height="264" class="img_SS3x"></p>
<hr>
<h2 class="anchor anchorWithStickyNavbar_JmGV" id="other-notable-enhancements">Other Notable Enhancements<a href="https://podman-desktop.io/blog/podman-desktop-release-0.15#other-notable-enhancements" class="hash-link" aria-label="Direct link to Other Notable Enhancements" title="Direct link to Other Notable Enhancements"></a></h2>
<ul>
<li>
<p>We know which <strong>Settings</strong> page is used the most often, so now it's the default: <strong><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="gear" class="svg-inline--fa fa-gear fa-lg" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path fill="currentColor" d="M495.9 166.6c3.2 8.7 .5 18.4-6.4 24.6l-43.3 39.4c1.1 8.3 1.7 16.8 1.7 25.4s-.6 17.1-1.7 25.4l43.3 39.4c6.9 6.2 9.6 15.9 6.4 24.6c-4.4 11.9-9.7 23.3-15.8 34.3l-4.7 8.1c-6.6 11-14 21.4-22.1 31.2c-5.9 7.2-15.7 9.6-24.5 6.8l-55.7-17.7c-13.4 10.3-28.2 18.9-44 25.4l-12.5 57.1c-2 9.1-9 16.3-18.2 17.8c-13.8 2.3-28 3.5-42.5 3.5s-28.7-1.2-42.5-3.5c-9.2-1.5-16.2-8.7-18.2-17.8l-12.5-57.1c-15.8-6.5-30.6-15.1-44-25.4L83.1 425.9c-8.8 2.8-18.6 .3-24.5-6.8c-8.1-9.8-15.5-20.2-22.1-31.2l-4.7-8.1c-6.1-11-11.4-22.4-15.8-34.3c-3.2-8.7-.5-18.4 6.4-24.6l43.3-39.4C64.6 273.1 64 264.6 64 256s.6-17.1 1.7-25.4L22.4 191.2c-6.9-6.2-9.6-15.9-6.4-24.6c4.4-11.9 9.7-23.3 15.8-34.3l4.7-8.1c6.6-11 14-21.4 22.1-31.2c5.9-7.2 15.7-9.6 24.5-6.8l55.7 17.7c13.4-10.3 28.2-18.9 44-25.4l12.5-57.1c2-9.1 9-16.3 18.2-17.8C227.3 1.2 241.5 0 256 0s28.7 1.2 42.5 3.5c9.2 1.5 16.2 8.7 18.2 17.8l12.5 57.1c15.8 6.5 30.6 15.1 44 25.4l55.7-17.7c8.8-2.8 18.6-.3 24.5 6.8c8.1 9.8 15.5 20.2 22.1 31.2l4.7 8.1c6.1 11 11.4 22.4 15.8 34.3zM256 336a80 80 0 1 0 0-160 80 80 0 1 0 0 160z"></path></svg> Settings &gt; Resources</strong> <a href="https://github.com/containers/podman-desktop/issues/2105" target="_blank" rel="noopener noreferrer">#2105</a>.</p>
</li>
<li>
<p>Extensions can now use the Tasks API to let long running tasks continue in the background <a href="https://github.com/containers/podman-desktop/issues/2019" target="_blank" rel="noopener noreferrer">#2019</a> and the existing withProgress API also uses the task manager now
<a href="https://github.com/containers/podman-desktop/pull/2187" target="_blank" rel="noopener noreferrer">#2187</a>.</p>
</li>
</ul>
<p><img loading="lazy" src="https://user-images.githubusercontent.com/695993/233560830-85cfa685-5dcd-4efa-9fae-730a8a9eef3b.gif" alt="Task API" class="img_SS3x"></p>
<ul>
<li>
<p>Images are now sorted by age <a href="https://github.com/containers/podman-desktop/pull/2311" target="_blank" rel="noopener noreferrer">#2311</a>.</p>
</li>
<li>
<p>When you start/stop a container or pod, the button is now animated instead of having an separate spinner
<a href="https://github.com/containers/podman-desktop/issues/2101" target="_blank" rel="noopener noreferrer">#2101</a>.</p>
</li>
<li>
<p>The <strong><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="gear" class="svg-inline--fa fa-gear fa-lg" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path fill="currentColor" d="M495.9 166.6c3.2 8.7 .5 18.4-6.4 24.6l-43.3 39.4c1.1 8.3 1.7 16.8 1.7 25.4s-.6 17.1-1.7 25.4l43.3 39.4c6.9 6.2 9.6 15.9 6.4 24.6c-4.4 11.9-9.7 23.3-15.8 34.3l-4.7 8.1c-6.6 11-14 21.4-22.1 31.2c-5.9 7.2-15.7 9.6-24.5 6.8l-55.7-17.7c-13.4 10.3-28.2 18.9-44 25.4l-12.5 57.1c-2 9.1-9 16.3-18.2 17.8c-13.8 2.3-28 3.5-42.5 3.5s-28.7-1.2-42.5-3.5c-9.2-1.5-16.2-8.7-18.2-17.8l-12.5-57.1c-15.8-6.5-30.6-15.1-44-25.4L83.1 425.9c-8.8 2.8-18.6 .3-24.5-6.8c-8.1-9.8-15.5-20.2-22.1-31.2l-4.7-8.1c-6.1-11-11.4-22.4-15.8-34.3c-3.2-8.7-.5-18.4 6.4-24.6l43.3-39.4C64.6 273.1 64 264.6 64 256s.6-17.1 1.7-25.4L22.4 191.2c-6.9-6.2-9.6-15.9-6.4-24.6c4.4-11.9 9.7-23.3 15.8-34.3l4.7-8.1c6.6-11 14-21.4 22.1-31.2c5.9-7.2 15.7-9.6 24.5-6.8l55.7 17.7c13.4-10.3 28.2-18.9 44-25.4l12.5-57.1c2-9.1 9-16.3 18.2-17.8C227.3 1.2 241.5 0 256 0s28.7 1.2 42.5 3.5c9.2 1.5 16.2 8.7 18.2 17.8l12.5 57.1c15.8 6.5 30.6 15.1 44 25.4l55.7-17.7c8.8-2.8 18.6-.3 24.5 6.8c8.1 9.8 15.5 20.2 22.1 31.2l4.7 8.1c6.1 11 11.4 22.4 15.8 34.3zM256 336a80 80 0 1 0 0-160 80 80 0 1 0 0 160z"></path></svg> Settings &gt; Preferences</strong> page now has a search bar <a href="https://github.com/containers/podman-desktop/pull/2128" target="_blank" rel="noopener noreferrer">#2128</a>.</p>
</li>
</ul>
<p><img loading="lazy" alt="Search preferences" src="https://podman-desktop.io/assets/images/prefs-8b7886c5b18178c010e3d4033f25fe5c.png" width="1162" height="394" class="img_SS3x"></p>
<ul>
<li>The Help page has been updated <a href="https://github.com/containers/podman-desktop/issues/431" target="_blank" rel="noopener noreferrer">#431</a>.</li>
</ul>
<p><img loading="lazy" alt="Updated Help" src="https://podman-desktop.io/assets/images/help-61063667146d82cf967c0905ee7fc9b3.png" width="1386" height="1222" class="img_SS3x"></p>
<hr>
<h2 class="anchor anchorWithStickyNavbar_JmGV" id="notable-bug-fixes">Notable Bug Fixes<a href="https://podman-desktop.io/blog/podman-desktop-release-0.15#notable-bug-fixes" class="hash-link" aria-label="Direct link to Notable Bug Fixes" title="Direct link to Notable Bug Fixes"></a></h2>
<ul>
<li>There was no way to see log or outcome if you leave the Kind cluster creation page <a href="https://github.com/containers/podman-desktop/issues/2079" target="_blank" rel="noopener noreferrer">#2079</a>.</li>
<li>Kind image load doesn't show a notification <a href="https://github.com/containers/podman-desktop/issues/2225" target="_blank" rel="noopener noreferrer">#2225</a>.</li>
<li>Fix odd selection in <strong><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="gear" class="svg-inline--fa fa-gear fa-lg" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path fill="currentColor" d="M495.9 166.6c3.2 8.7 .5 18.4-6.4 24.6l-43.3 39.4c1.1 8.3 1.7 16.8 1.7 25.4s-.6 17.1-1.7 25.4l43.3 39.4c6.9 6.2 9.6 15.9 6.4 24.6c-4.4 11.9-9.7 23.3-15.8 34.3l-4.7 8.1c-6.6 11-14 21.4-22.1 31.2c-5.9 7.2-15.7 9.6-24.5 6.8l-55.7-17.7c-13.4 10.3-28.2 18.9-44 25.4l-12.5 57.1c-2 9.1-9 16.3-18.2 17.8c-13.8 2.3-28 3.5-42.5 3.5s-28.7-1.2-42.5-3.5c-9.2-1.5-16.2-8.7-18.2-17.8l-12.5-57.1c-15.8-6.5-30.6-15.1-44-25.4L83.1 425.9c-8.8 2.8-18.6 .3-24.5-6.8c-8.1-9.8-15.5-20.2-22.1-31.2l-4.7-8.1c-6.1-11-11.4-22.4-15.8-34.3c-3.2-8.7-.5-18.4 6.4-24.6l43.3-39.4C64.6 273.1 64 264.6 64 256s.6-17.1 1.7-25.4L22.4 191.2c-6.9-6.2-9.6-15.9-6.4-24.6c4.4-11.9 9.7-23.3 15.8-34.3l4.7-8.1c6.6-11 14-21.4 22.1-31.2c5.9-7.2 15.7-9.6 24.5-6.8l55.7 17.7c13.4-10.3 28.2-18.9 44-25.4l12.5-57.1c2-9.1 9-16.3 18.2-17.8C227.3 1.2 241.5 0 256 0s28.7 1.2 42.5 3.5c9.2 1.5 16.2 8.7 18.2 17.8l12.5 57.1c15.8 6.5 30.6 15.1 44 25.4l55.7-17.7c8.8-2.8 18.6-.3 24.5 6.8c8.1 9.8 15.5 20.2 22.1 31.2l4.7 8.1c6.1 11 11.4 22.4 15.8 34.3zM256 336a80 80 0 1 0 0-160 80 80 0 1 0 0 160z"></path></svg> Settings &gt; Extensions</strong> <a href="https://github.com/containers/podman-desktop/issues/2130" target="_blank" rel="noopener noreferrer">#2130</a>.</li>
<li>Menus are now cleaned up properly when extensions are stopped <a href="https://github.com/containers/podman-desktop/pull/2188" target="_blank" rel="noopener noreferrer">#2188</a>.</li>
<li>Kind clusters are now cleaned up when Podman machine is stopped <a href="https://github.com/containers/podman-desktop/pull/2306" target="_blank" rel="noopener noreferrer">#2306</a>.</li>
</ul>
<hr>
<h2 class="anchor anchorWithStickyNavbar_JmGV" id="final-notes">Final notes<a href="https://podman-desktop.io/blog/podman-desktop-release-0.15#final-notes" class="hash-link" aria-label="Direct link to Final notes" title="Direct link to Final notes"></a></h2>
<p>The complete list of issues fixed in this release is available <a href="https://github.com/containers/podman-desktop/issues?q=is%3Aclosed+milestone%3A0.15.0" target="_blank" rel="noopener noreferrer">here</a>.</p>
<p>Get the latest release from the <a href="https://podman-desktop.io/downloads">Downloads</a> section of the website and boost your development journey with Podman Desktop. Additionally, visit the <a href="https://github.com/containers/podman-desktop" target="_blank" rel="noopener noreferrer">GitHub repository</a> and see how you can help us make Podman Desktop better.</p>]]></content:encoded>
<category>podman-desktop</category>
<category>release</category>
<category>kubernetes</category>
<category>kind</category>
</item>
<item>
<title><![CDATA[Setting up and running a Kubernetes cluster locally with Podman Desktop]]></title>
<link>https://podman-desktop.io/blog/running-a-local-kubernetes-cluster-with-podman-desktop</link>
<guid>https://podman-desktop.io/blog/running-a-local-kubernetes-cluster-with-podman-desktop</guid>
<pubDate>Wed, 19 Apr 2023 00:00:00 GMT</pubDate>
<description><![CDATA[Setting up and running a Kubernetes cluster locally with Podman Desktop]]></description>
<content:encoded><![CDATA[<p>In this blog post you will learn to use Podman Desktop to run the <a href="https://kubernetes.io/docs/tutorials/stateless-application/guestbook/" target="_blank" rel="noopener noreferrer">Kubernetes documentation example: Deploying PHP Guestbook application with Redis</a>.</p>
<p>On the agenda:</p>
<ol>
<li>Installing Podman Desktop.</li>
<li>Installing and initializing your container engine: Podman.</li>
<li>Installing and starting your local Kubernetes provider: Kind.</li>
<li>Starting the Redis leader.</li>
<li>Starting and scaling the Redis followers.</li>
<li>Starting and exposing the Guestbook frontend.</li>
</ol>
<h2 class="anchor anchorWithStickyNavbar_JmGV" id="installing-podman-desktop">Installing Podman Desktop<a href="https://podman-desktop.io/blog/running-a-local-kubernetes-cluster-with-podman-desktop#installing-podman-desktop" class="hash-link" aria-label="Direct link to Installing Podman Desktop" title="Direct link to Installing Podman Desktop"></a></h2>
<p>You need Podman Desktop.</p>
<ol>
<li>Go to <a href="https://podman-desktop.io/docs/installation">Podman Desktop installation documentation</a>.</li>
<li>Click on your platform name: <a href="https://podman-desktop.io/docs/installation/windows-install">Windows</a>, <a href="https://podman-desktop.io/docs/installation/macos-install">macOS</a>, or <a href="https://podman-desktop.io/docs/installation/linux-install">Linux</a>.</li>
<li>Follow the instructions. Stick to the default installation method.</li>
<li>Start <strong>Podman Desktop</strong>.</li>
</ol>
<p>At this point, you have a graphical user interface to:</p>
<ul>
<li>Install Podman and Kind.</li>
<li>Control and work with your container engines and Kubernetes clusters.</li>
<li>Run your application on your container engine and migrate it to Kubernetes.</li>
</ul>
<h2 class="anchor anchorWithStickyNavbar_JmGV" id="installing-and-initializing-your-container-engine-podman">Installing and initializing your container engine: Podman<a href="https://podman-desktop.io/blog/running-a-local-kubernetes-cluster-with-podman-desktop#installing-and-initializing-your-container-engine-podman" class="hash-link" aria-label="Direct link to Installing and initializing your container engine: Podman" title="Direct link to Installing and initializing your container engine: Podman"></a></h2>
<p>Podman Desktop can control various container engines, such as:</p>
<ul>
<li>Docker</li>
<li>Lima</li>
<li>Podman</li>
</ul>
<p>Consider installing the Podman container engine for:</p>
<ul>
<li>Added security</li>
<li>No daemon</li>
<li>Open source</li>
</ul>
<p>Containers are a Linux technology.</p>
<ul>
<li>On Linux, you can install Podman natively.
See: <a href="https://podman.io/docs/installation#installing-on-linux" target="_blank" rel="noopener noreferrer">Installing Podman on Linux</a>.</li>
<li>On macOS and Windows, Podman requires to run in a Linux virtual machine: the Podman machine.
Use Podman Desktop to install Podman and initialize your Podman machine:</li>
</ul>
<h4 class="anchor anchorWithStickyNavbar_JmGV" id="procedure">Procedure<a href="https://podman-desktop.io/blog/running-a-local-kubernetes-cluster-with-podman-desktop#procedure" class="hash-link" aria-label="Direct link to Procedure" title="Direct link to Procedure"></a></h4>
<ol>
<li>Open Podman Desktop <strong>Dashboard</strong></li>
<li>The <strong>Dashboard</strong> displays <em>Podman Desktop was not able to find an installation of Podman</em>.</li>
<li>Click on <strong>Install</strong>.</li>
<li>Podman Desktop checks the prerequisites to install Podman Engine. When necessary, follow the instructions to install prerequisites.</li>
<li>Podman displays the dialog: <em>Podman is not installed on this system, would you like to install Podman?</em>. Click on <strong>Yes</strong> to install Podman.</li>
<li>Click on <strong>Initialize and start</strong>.</li>
</ol>
<h4 class="anchor anchorWithStickyNavbar_JmGV" id="verification">Verification<a href="https://podman-desktop.io/blog/running-a-local-kubernetes-cluster-with-podman-desktop#verification" class="hash-link" aria-label="Direct link to Verification" title="Direct link to Verification"></a></h4>
<ul>
<li>
<p>The <strong>Dashboard</strong> displays <em>Podman is running</em>.</p>
<p><img loading="lazy" alt="Podman is running" src="https://podman-desktop.io/assets/images/podman-is-running-745db8684c4d0240922a5aeb63e517d3.png" width="611" height="219" class="img_SS3x"></p>
</li>
</ul>
<p>At this point, you can start working with containers.</p>
<h2 class="anchor anchorWithStickyNavbar_JmGV" id="installing-and-starting-your-local-kubernetes-provider-kind">Installing and starting your local Kubernetes provider: Kind<a href="https://podman-desktop.io/blog/running-a-local-kubernetes-cluster-with-podman-desktop#installing-and-starting-your-local-kubernetes-provider-kind" class="hash-link" aria-label="Direct link to Installing and starting your local Kubernetes provider: Kind" title="Direct link to Installing and starting your local Kubernetes provider: Kind"></a></h2>
<p>You want to deploy your application to a local Kubernetes cluster.</p>
<p>Podman Desktop can help you run Kind-powered local Kubernetes clusters on a container engine, such as Podman.</p>
<p>Podman Desktop helps you <a href="https://podman-desktop.io/docs/kind/installing">installing the <code>kind</code> CLI</a>:</p>
<ol>
<li>
<p>In the status bar, click on <strong>Kind</strong>, and follow the prompts.</p>
</li>
<li>
<p>When the <code>kind</code> CLI is available, the status bar does not display <strong>Kind</strong>.</p>
</li>
<li>
<p>On Windows, <a href="https://podman-desktop.io/docs/kind/configuring-podman-for-kind-on-windows">configure Podman in rootful mode</a></p>
<div class="language-shell-session codeBlockContainer_mQmQ theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockContent_D5yF"><pre tabindex="0" class="prism-code language-shell-session codeBlock_RMoD thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_AclH"><span class="token-line" style="color:#F8F8F2"><span class="token command shell-symbol important">$</span><span class="token command"> </span><span class="token command bash language-bash">podman system connection default podman-machine-default-root</span><br></span></code></pre><div class="buttonGroup_aaMX"><button type="button" aria-label="Copy code to clipboard" title="Copy" class="clean-btn"><span class="copyButtonIcons_z5j7" aria-hidden="true"><svg viewBox="0 0 24 24" class="copyButtonIcon_FoOz"><path fill="currentColor" d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"></path></svg><svg viewBox="0 0 24 24" class="copyButtonSuccessIcon_L0B6"><path fill="currentColor" d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"></path></svg></span></button></div></div></div>
</li>
<li>
<p>Go to <strong><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="gear" class="svg-inline--fa fa-gear fa-lg" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path fill="currentColor" d="M495.9 166.6c3.2 8.7 .5 18.4-6.4 24.6l-43.3 39.4c1.1 8.3 1.7 16.8 1.7 25.4s-.6 17.1-1.7 25.4l43.3 39.4c6.9 6.2 9.6 15.9 6.4 24.6c-4.4 11.9-9.7 23.3-15.8 34.3l-4.7 8.1c-6.6 11-14 21.4-22.1 31.2c-5.9 7.2-15.7 9.6-24.5 6.8l-55.7-17.7c-13.4 10.3-28.2 18.9-44 25.4l-12.5 57.1c-2 9.1-9 16.3-18.2 17.8c-13.8 2.3-28 3.5-42.5 3.5s-28.7-1.2-42.5-3.5c-9.2-1.5-16.2-8.7-18.2-17.8l-12.5-57.1c-15.8-6.5-30.6-15.1-44-25.4L83.1 425.9c-8.8 2.8-18.6 .3-24.5-6.8c-8.1-9.8-15.5-20.2-22.1-31.2l-4.7-8.1c-6.1-11-11.4-22.4-15.8-34.3c-3.2-8.7-.5-18.4 6.4-24.6l43.3-39.4C64.6 273.1 64 264.6 64 256s.6-17.1 1.7-25.4L22.4 191.2c-6.9-6.2-9.6-15.9-6.4-24.6c4.4-11.9 9.7-23.3 15.8-34.3l4.7-8.1c6.6-11 14-21.4 22.1-31.2c5.9-7.2 15.7-9.6 24.5-6.8l55.7 17.7c13.4-10.3 28.2-18.9 44-25.4l12.5-57.1c2-9.1 9-16.3 18.2-17.8C227.3 1.2 241.5 0 256 0s28.7 1.2 42.5 3.5c9.2 1.5 16.2 8.7 18.2 17.8l12.5 57.1c15.8 6.5 30.6 15.1 44 25.4l55.7-17.7c8.8-2.8 18.6-.3 24.5 6.8c8.1 9.8 15.5 20.2 22.1 31.2l4.7 8.1c6.1 11 11.4 22.4 15.8 34.3zM256 336a80 80 0 1 0 0-160 80 80 0 1 0 0 160z"></path></svg> Settings &gt; Resources</strong></p>
</li>
<li>
<p>In the <strong><img src="https://podman-desktop.io/img/podman-icon.png" alt="Podman icon" style="height:1.5em;display:inline"> Podman</strong> tile, click on the <strong><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="repeat" class="svg-inline--fa fa-repeat fa-lg" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path fill="currentColor" d="M0 224c0 17.7 14.3 32 32 32s32-14.3 32-32c0-53 43-96 96-96H320v32c0 12.9 7.8 24.6 19.8 29.6s25.7 2.2 34.9-6.9l64-64c12.5-12.5 12.5-32.8 0-45.3l-64-64c-9.2-9.2-22.9-11.9-34.9-6.9S320 19.1 320 32V64H160C71.6 64 0 135.6 0 224zm512 64c0-17.7-14.3-32-32-32s-32 14.3-32 32c0 53-43 96-96 96H192V352c0-12.9-7.8-24.6-19.8-29.6s-25.7-2.2-34.9 6.9l-64 64c-12.5 12.5-12.5 32.8 0 45.3l64 64c9.2 9.2 22.9 11.9 34.9 6.9s19.8-16.6 19.8-29.6V448H352c88.4 0 160-71.6 160-160z"></path></svg></strong> icon to restart the Podman container engine.</p>
</li>
<li>
<p>In the <strong><img src="https://podman-desktop.io/img/kind-icon.png" alt="Kind icon" style="height:1.5em;display:inline"> Kind</strong> tile, click on the <strong>Create new</strong> button.</p>
<ol>
<li><strong>Name</strong>: enter <code>kind-cluster</code>.</li>
<li><strong>Provider Type</strong>: select <code>podman</code>.</li>
<li><strong>HTTP Port</strong>: select <code>9090</code>.</li>
<li><strong>HTTPS Port</strong>: select <code>9443</code>.</li>
<li><strong>Setup an ingress controller</strong>: <code>Enabled</code></li>
<li>Click the <strong>Create</strong> button.
<img loading="lazy" alt="Create a Kind cluster screen" src="https://podman-desktop.io/assets/images/create-a-kind-cluster-341ca1312e2e05d63d82a93726825a05.png" width="793" height="711" class="img_SS3x"></li>
</ol>
</li>
<li>
<p>After successful creation, click on the <strong>Go back to resources</strong> button</p>
</li>
</ol>
<h4 class="anchor anchorWithStickyNavbar_JmGV" id="verification-1">Verification<a href="https://podman-desktop.io/blog/running-a-local-kubernetes-cluster-with-podman-desktop#verification-1" class="hash-link" aria-label="Direct link to Verification" title="Direct link to Verification"></a></h4>
<ol>
<li>
<p>In <strong><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="gear" class="svg-inline--fa fa-gear fa-lg" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path fill="currentColor" d="M495.9 166.6c3.2 8.7 .5 18.4-6.4 24.6l-43.3 39.4c1.1 8.3 1.7 16.8 1.7 25.4s-.6 17.1-1.7 25.4l43.3 39.4c6.9 6.2 9.6 15.9 6.4 24.6c-4.4 11.9-9.7 23.3-15.8 34.3l-4.7 8.1c-6.6 11-14 21.4-22.1 31.2c-5.9 7.2-15.7 9.6-24.5 6.8l-55.7-17.7c-13.4 10.3-28.2 18.9-44 25.4l-12.5 57.1c-2 9.1-9 16.3-18.2 17.8c-13.8 2.3-28 3.5-42.5 3.5s-28.7-1.2-42.5-3.5c-9.2-1.5-16.2-8.7-18.2-17.8l-12.5-57.1c-15.8-6.5-30.6-15.1-44-25.4L83.1 425.9c-8.8 2.8-18.6 .3-24.5-6.8c-8.1-9.8-15.5-20.2-22.1-31.2l-4.7-8.1c-6.1-11-11.4-22.4-15.8-34.3c-3.2-8.7-.5-18.4 6.4-24.6l43.3-39.4C64.6 273.1 64 264.6 64 256s.6-17.1 1.7-25.4L22.4 191.2c-6.9-6.2-9.6-15.9-6.4-24.6c4.4-11.9 9.7-23.3 15.8-34.3l4.7-8.1c6.6-11 14-21.4 22.1-31.2c5.9-7.2 15.7-9.6 24.5-6.8l55.7 17.7c13.4-10.3 28.2-18.9 44-25.4l12.5-57.1c2-9.1 9-16.3 18.2-17.8C227.3 1.2 241.5 0 256 0s28.7 1.2 42.5 3.5c9.2 1.5 16.2 8.7 18.2 17.8l12.5 57.1c15.8 6.5 30.6 15.1 44 25.4l55.7-17.7c8.8-2.8 18.6-.3 24.5 6.8c8.1 9.8 15.5 20.2 22.1 31.2l4.7 8.1c6.1 11 11.4 22.4 15.8 34.3zM256 336a80 80 0 1 0 0-160 80 80 0 1 0 0 160z"></path></svg> Settings &gt; Resources</strong> your Kind cluster is running/</p>
<p><img loading="lazy" alt="Kind cluster is running" src="https://podman-desktop.io/assets/images/kind-cluster-is-running-e721d473aa52100d8179cbb3d06e0ef9.png" width="452" height="189" class="img_SS3x"></p>
</li>
<li>
<p>In the <strong>Podman Desktop</strong> tray, open the <strong>Kubernetes</strong> menu: you can set the context to your Kind cluster: <code>kind-kind-cluster</code>.</p>
<p><img loading="lazy" alt="Kind cluster Kubernetes context in the tray" src="https://podman-desktop.io/assets/images/kind-cluster-context-in-the-tray-5bb9338bb1437bbcf79bf50dd401400e.png" width="273" height="309" class="img_SS3x"></p>
<p>At this point, you can start working with containers, and your local Kubernetes cluster.</p>
</li>
</ol>
<h4 class="anchor anchorWithStickyNavbar_JmGV" id="additional-resources">Additional resources<a href="https://podman-desktop.io/blog/running-a-local-kubernetes-cluster-with-podman-desktop#additional-resources" class="hash-link" aria-label="Direct link to Additional resources" title="Direct link to Additional resources"></a></h4>
<ul>
<li><a href="https://podman-desktop.io/docs/kind/creating-a-kind-cluster">Creating a local Kind-powered Kubernetes cluster</a></li>
</ul>
<h2 class="anchor anchorWithStickyNavbar_JmGV" id="starting-the-redis-leader">Starting the Redis leader<a href="https://podman-desktop.io/blog/running-a-local-kubernetes-cluster-with-podman-desktop#starting-the-redis-leader" class="hash-link" aria-label="Direct link to Starting the Redis leader" title="Direct link to Starting the Redis leader"></a></h2>
<p>The Guestbook application uses Redis to store its data.</p>
<p>With Podman Desktop, you can prepare the Redis leader image and container on your local container engine, and deploy the results to a Kubernetes pod and service.
This is functionally equal to the <code>redis-leader</code> deployment that the Kubernetes example propose.</p>
<h4 class="anchor anchorWithStickyNavbar_JmGV" id="procedure-1">Procedure<a href="https://podman-desktop.io/blog/running-a-local-kubernetes-cluster-with-podman-desktop#procedure-1" class="hash-link" aria-label="Direct link to Procedure" title="Direct link to Procedure"></a></h4>
<ol>
<li>
<p>Open <strong><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="cloud" class="svg-inline--fa fa-cloud fa-lg" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 640 512"><path fill="currentColor" d="M0 336c0 79.5 64.5 144 144 144H512c70.7 0 128-57.3 128-128c0-61.9-44-113.6-102.4-125.4c4.1-10.7 6.4-22.4 6.4-34.6c0-53-43-96-96-96c-19.7 0-38.1 6-53.3 16.2C367 64.2 315.3 32 256 32C167.6 32 96 103.6 96 192c0 2.7 .1 5.4 .2 8.1C40.2 219.8 0 273.2 0 336z"></path></svg> Images &gt; <svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="circle-arrow-down" class="svg-inline--fa fa-circle-arrow-down fa-lg" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path fill="currentColor" d="M256 0a256 256 0 1 0 0 512A256 256 0 1 0 256 0zM127 281c-9.4-9.4-9.4-24.6 0-33.9s24.6-9.4 33.9 0l71 71L232 136c0-13.3 10.7-24 24-24s24 10.7 24 24l0 182.1 71-71c9.4-9.4 24.6-9.4 33.9 0s9.4 24.6 0 33.9L273 393c-9.4 9.4-24.6 9.4-33.9 0L127 281z"></path></svg> Pull an image</strong>.</p>
<ol>
<li><strong>Image to Pull</strong>: enter <code>docker.io/redis:6.0.5</code></li>
<li>Click <strong>Pull image</strong> to pull the image to your container engine local image registry.</li>
<li>Click <strong>Done</strong> to get back to the images list.</li>
</ol>
</li>
<li>
<p><strong><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="cloud" class="svg-inline--fa fa-cloud fa-lg" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 640 512"><path fill="currentColor" d="M0 336c0 79.5 64.5 144 144 144H512c70.7 0 128-57.3 128-128c0-61.9-44-113.6-102.4-125.4c4.1-10.7 6.4-22.4 6.4-34.6c0-53-43-96-96-96c-19.7 0-38.1 6-53.3 16.2C367 64.2 315.3 32 256 32C167.6 32 96 103.6 96 192c0 2.7 .1 5.4 .2 8.1C40.2 219.8 0 273.2 0 336z"></path></svg> Search images</strong>: enter <code>redis:6.0.5</code> to find the image.</p>
</li>
<li>
<p>Click <strong><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="play" class="svg-inline--fa fa-play fa-lg" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 384 512"><path fill="currentColor" d="M73 39c-14.8-9.1-33.4-9.4-48.5-.9S0 62.6 0 80V432c0 17.4 9.4 33.4 24.5 41.9s33.7 8.1 48.5-.9L361 297c14.3-8.7 23-24.2 23-41s-8.7-32.2-23-41L73 39z"></path></svg></strong> to open the <strong>Create a container from image</strong> dialog.</p>
<ol>
<li><strong>Container name</strong>: enter <code>leader</code>,</li>
<li><strong>Local port for <code>6379/tcp</code></strong>: <code>6379</code>.</li>
<li>Click <strong><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="play" class="svg-inline--fa fa-play fa-lg" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 384 512"><path fill="currentColor" d="M73 39c-14.8-9.1-33.4-9.4-48.5-.9S0 62.6 0 80V432c0 17.4 9.4 33.4 24.5 41.9s33.7 8.1 48.5-.9L361 297c14.3-8.7 23-24.2 23-41s-8.7-32.2-23-41L73 39z"></path></svg> Start Container</strong> to start the container in your container engine.</li>
</ol>
</li>
<li>
<p><strong><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="cloud" class="svg-inline--fa fa-cloud fa-lg" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 640 512"><path fill="currentColor" d="M0 336c0 79.5 64.5 144 144 144H512c70.7 0 128-57.3 128-128c0-61.9-44-113.6-102.4-125.4c4.1-10.7 6.4-22.4 6.4-34.6c0-53-43-96-96-96c-19.7 0-38.1 6-53.3 16.2C367 64.2 315.3 32 256 32C167.6 32 96 103.6 96 192c0 2.7 .1 5.4 .2 8.1C40.2 219.8 0 273.2 0 336z"></path></svg> Search containers</strong>: enter <code>leader</code> to find the running container.</p>
</li>
<li>
<p>Click <strong><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="stop" class="svg-inline--fa fa-stop fa-lg" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 384 512"><path fill="currentColor" d="M0 128C0 92.7 28.7 64 64 64H320c35.3 0 64 28.7 64 64V384c0 35.3-28.7 64-64 64H64c-35.3 0-64-28.7-64-64V128z"></path></svg></strong> to stop the container, and leave the <code>6379</code> port available for the Redis follower container.</p>
</li>
<li>
<p>Click <strong><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="ellipsis-vertical" class="svg-inline--fa fa-ellipsis-vertical fa-lg" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 128 512"><path fill="currentColor" d="M64 360a56 56 0 1 0 0 112 56 56 0 1 0 0-112zm0-160a56 56 0 1 0 0 112 56 56 0 1 0 0-112zM120 96A56 56 0 1 0 8 96a56 56 0 1 0 112 0z"></path></svg> &gt; <svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="rocket" class="svg-inline--fa fa-rocket fa-lg" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path fill="currentColor" d="M156.6 384.9L125.7 354c-8.5-8.5-11.5-20.8-7.7-32.2c3-8.9 7-20.5 11.8-33.8L24 288c-8.6 0-16.6-4.6-20.9-12.1s-4.2-16.7 .2-24.1l52.5-88.5c13-21.9 36.5-35.3 61.9-35.3l82.3 0c2.4-4 4.8-7.7 7.2-11.3C289.1-4.1 411.1-8.1 483.9 5.3c11.6 2.1 20.6 11.2 22.8 22.8c13.4 72.9 9.3 194.8-111.4 276.7c-3.5 2.4-7.3 4.8-11.3 7.2v82.3c0 25.4-13.4 49-35.3 61.9l-88.5 52.5c-7.4 4.4-16.6 4.5-24.1 .2s-12.1-12.2-12.1-20.9V380.8c-14.1 4.9-26.4 8.9-35.7 11.9c-11.2 3.6-23.4 .5-31.8-7.8zM384 168a40 40 0 1 0 0-80 40 40 0 1 0 0 80z"></path></svg> Deploy to Kubernetes</strong> to open the <strong>Deploy generated pod to Kubernetes</strong> screen.</p>
<ol>
<li><strong>Pod Name</strong>: enter <code>redis-leader</code>.</li>
<li><strong>Use Kubernetes Services</strong>: select <strong>Replace <code>hostPort</code> exposure on containers by Services. It is the recommended way to expose ports, as a cluster policy might prevent to use <code>hostPort</code>.</strong></li>
<li><strong>Expose service locally using Kubernetes Ingress</strong>: deselect <strong>Create a Kubernetes ingress to get access to the ports that this pod exposes, at the default ingress controller location. Example: on a default Kind cluster created with Podman Desktop: <code>http://localhost:9090</code>. Requirements: your cluster has an ingress controller`</strong>.</li>
<li><strong>Kubernetes namespaces</strong>: select <code>default</code>.</li>
<li>Click <strong><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="rocket" class="svg-inline--fa fa-rocket fa-lg" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path fill="currentColor" d="M156.6 384.9L125.7 354c-8.5-8.5-11.5-20.8-7.7-32.2c3-8.9 7-20.5 11.8-33.8L24 288c-8.6 0-16.6-4.6-20.9-12.1s-4.2-16.7 .2-24.1l52.5-88.5c13-21.9 36.5-35.3 61.9-35.3l82.3 0c2.4-4 4.8-7.7 7.2-11.3C289.1-4.1 411.1-8.1 483.9 5.3c11.6 2.1 20.6 11.2 22.8 22.8c13.4 72.9 9.3 194.8-111.4 276.7c-3.5 2.4-7.3 4.8-11.3 7.2v82.3c0 25.4-13.4 49-35.3 61.9l-88.5 52.5c-7.4 4.4-16.6 4.5-24.1 .2s-12.1-12.2-12.1-20.9V380.8c-14.1 4.9-26.4 8.9-35.7 11.9c-11.2 3.6-23.4 .5-31.8-7.8zM384 168a40 40 0 1 0 0-80 40 40 0 1 0 0 80z"></path></svg> Deploy</strong>.
<img loading="lazy" alt="Deploy generated leader pod to Kubernetes screen" src="https://podman-desktop.io/assets/images/deploy-generated-leader-pod-to-kubernetes-e812812296742ec54cd822d0ba969c28.png" width="1292" height="968" class="img_SS3x"></li>
<li>Wait for the pod to reach the state: <strong>Phase: Running</strong>.</li>
<li>Click <strong>Done</strong>.</li>
</ol>
</li>
</ol>
<h4 class="anchor anchorWithStickyNavbar_JmGV" id="verification-2">Verification<a href="https://podman-desktop.io/blog/running-a-local-kubernetes-cluster-with-podman-desktop#verification-2" class="hash-link" aria-label="Direct link to Verification" title="Direct link to Verification"></a></h4>
<ul>
<li>
<p>The <strong><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="cubes" class="svg-inline--fa fa-cubes fa-lg" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 576 512"><path fill="currentColor" d="M290.8 48.6l78.4 29.7L288 109.5 206.8 78.3l78.4-29.7c1.8-.7 3.8-.7 5.7 0zM136 92.5V204.7c-1.3 .4-2.6 .8-3.9 1.3l-96 36.4C14.4 250.6 0 271.5 0 294.7V413.9c0 22.2 13.1 42.3 33.5 51.3l96 42.2c14.4 6.3 30.7 6.3 45.1 0L288 457.5l113.5 49.9c14.4 6.3 30.7 6.3 45.1 0l96-42.2c20.3-8.9 33.5-29.1 33.5-51.3V294.7c0-23.3-14.4-44.1-36.1-52.4l-96-36.4c-1.3-.5-2.6-.9-3.9-1.3V92.5c0-23.3-14.4-44.1-36.1-52.4l-96-36.4c-12.8-4.8-26.9-4.8-39.7 0l-96 36.4C150.4 48.4 136 69.3 136 92.5zM392 210.6l-82.4 31.2V152.6L392 121v89.6zM154.8 250.9l78.4 29.7L152 311.7 70.8 280.6l78.4-29.7c1.8-.7 3.8-.7 5.7 0zm18.8 204.4V354.8L256 323.2v95.9l-82.4 36.2zM421.2 250.9c1.8-.7 3.8-.7 5.7 0l78.4 29.7L424 311.7l-81.2-31.1 78.4-29.7zM523.2 421.2l-77.6 34.1V354.8L528 323.2v90.7c0 3.2-1.9 6-4.8 7.3z"></path></svg> Pods</strong> screen lists the running <code>redis-leader</code> pod.</p>
<p><img loading="lazy" alt="leader pod is running" src="https://podman-desktop.io/assets/images/leader-pod-is-running-a8caa174a15c06b287dff81b08041f7c.png" width="684" height="231" class="img_SS3x"></p>
</li>
</ul>
<h2 class="anchor anchorWithStickyNavbar_JmGV" id="starting-the-redis-followers">Starting the Redis followers<a href="https://podman-desktop.io/blog/running-a-local-kubernetes-cluster-with-podman-desktop#starting-the-redis-followers" class="hash-link" aria-label="Direct link to Starting the Redis followers" title="Direct link to Starting the Redis followers"></a></h2>
<p>Although the Redis leader is a single Pod, you can make it highly available and meet traffic demands by adding a few Redis followers, or replicas.</p>
<p><strong>With Podman Desktop, you can prepare the Redis follower image and container on your local container engine, and deploy the results to Kubernetes pods and services.</strong>
This is functionally equal to the <code>redis-follower</code> deployment that the Kubernetes example propose.</p>
<h4 class="anchor anchorWithStickyNavbar_JmGV" id="procedure-2">Procedure<a href="https://podman-desktop.io/blog/running-a-local-kubernetes-cluster-with-podman-desktop#procedure-2" class="hash-link" aria-label="Direct link to Procedure" title="Direct link to Procedure"></a></h4>
<ol>
<li>Open <strong><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="cloud" class="svg-inline--fa fa-cloud fa-lg" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 640 512"><path fill="currentColor" d="M0 336c0 79.5 64.5 144 144 144H512c70.7 0 128-57.3 128-128c0-61.9-44-113.6-102.4-125.4c4.1-10.7 6.4-22.4 6.4-34.6c0-53-43-96-96-96c-19.7 0-38.1 6-53.3 16.2C367 64.2 315.3 32 256 32C167.6 32 96 103.6 96 192c0 2.7 .1 5.4 .2 8.1C40.2 219.8 0 273.2 0 336z"></path></svg> Images &gt; <svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="circle-arrow-down" class="svg-inline--fa fa-circle-arrow-down fa-lg" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path fill="currentColor" d="M256 0a256 256 0 1 0 0 512A256 256 0 1 0 256 0zM127 281c-9.4-9.4-9.4-24.6 0-33.9s24.6-9.4 33.9 0l71 71L232 136c0-13.3 10.7-24 24-24s24 10.7 24 24l0 182.1 71-71c9.4-9.4 24.6-9.4 33.9 0s9.4 24.6 0 33.9L273 393c-9.4 9.4-24.6 9.4-33.9 0L127 281z"></path></svg> Pull an image</strong>.<!-- -->
<ol>
<li><strong>Image to Pull</strong>: enter <code>gcr.io/google_samples/gb-redis-follower:v2</code></li>
<li>Click <strong>Pull image</strong> to pull the image to your container engine local image registry.</li>
<li>Click <strong>Done</strong> to get back to the images list.</li>
</ol>
</li>
<li><strong><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="cloud" class="svg-inline--fa fa-cloud fa-lg" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 640 512"><path fill="currentColor" d="M0 336c0 79.5 64.5 144 144 144H512c70.7 0 128-57.3 128-128c0-61.9-44-113.6-102.4-125.4c4.1-10.7 6.4-22.4 6.4-34.6c0-53-43-96-96-96c-19.7 0-38.1 6-53.3 16.2C367 64.2 315.3 32 256 32C167.6 32 96 103.6 96 192c0 2.7 .1 5.4 .2 8.1C40.2 219.8 0 273.2 0 336z"></path></svg> Search images</strong>: enter <code>gb-redis-follower:v2</code> to find the image.</li>
<li>Click <strong><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="play" class="svg-inline--fa fa-play fa-lg" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 384 512"><path fill="currentColor" d="M73 39c-14.8-9.1-33.4-9.4-48.5-.9S0 62.6 0 80V432c0 17.4 9.4 33.4 24.5 41.9s33.7 8.1 48.5-.9L361 297c14.3-8.7 23-24.2 23-41s-8.7-32.2-23-41L73 39z"></path></svg></strong> to open the <strong>Create a container from image</strong> dialog.<!-- -->
<ol>
<li><strong>Container name</strong>: enter <code>follower</code>,</li>
<li><strong>Local port for <code>6379/tcp</code></strong>: <code>6379</code>.</li>
<li>Click <strong><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="play" class="svg-inline--fa fa-play fa-lg" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 384 512"><path fill="currentColor" d="M73 39c-14.8-9.1-33.4-9.4-48.5-.9S0 62.6 0 80V432c0 17.4 9.4 33.4 24.5 41.9s33.7 8.1 48.5-.9L361 297c14.3-8.7 23-24.2 23-41s-8.7-32.2-23-41L73 39z"></path></svg> Start Container</strong> to start the container in your container engine.</li>
</ol>
</li>
<li><strong><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="cloud" class="svg-inline--fa fa-cloud fa-lg" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 640 512"><path fill="currentColor" d="M0 336c0 79.5 64.5 144 144 144H512c70.7 0 128-57.3 128-128c0-61.9-44-113.6-102.4-125.4c4.1-10.7 6.4-22.4 6.4-34.6c0-53-43-96-96-96c-19.7 0-38.1 6-53.3 16.2C367 64.2 315.3 32 256 32C167.6 32 96 103.6 96 192c0 2.7 .1 5.4 .2 8.1C40.2 219.8 0 273.2 0 336z"></path></svg> Search containers</strong>: enter <code>follower</code> to find the running container.</li>
<li>Click <strong><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="stop" class="svg-inline--fa fa-stop fa-lg" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 384 512"><path fill="currentColor" d="M0 128C0 92.7 28.7 64 64 64H320c35.3 0 64 28.7 64 64V384c0 35.3-28.7 64-64 64H64c-35.3 0-64-28.7-64-64V128z"></path></svg></strong> to stop the container: you do not need it to run in the container engine.</li>
<li>Click <strong><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="ellipsis-vertical" class="svg-inline--fa fa-ellipsis-vertical fa-lg" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 128 512"><path fill="currentColor" d="M64 360a56 56 0 1 0 0 112 56 56 0 1 0 0-112zm0-160a56 56 0 1 0 0 112 56 56 0 1 0 0-112zM120 96A56 56 0 1 0 8 96a56 56 0 1 0 112 0z"></path></svg> &gt; <svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="rocket" class="svg-inline--fa fa-rocket fa-lg" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path fill="currentColor" d="M156.6 384.9L125.7 354c-8.5-8.5-11.5-20.8-7.7-32.2c3-8.9 7-20.5 11.8-33.8L24 288c-8.6 0-16.6-4.6-20.9-12.1s-4.2-16.7 .2-24.1l52.5-88.5c13-21.9 36.5-35.3 61.9-35.3l82.3 0c2.4-4 4.8-7.7 7.2-11.3C289.1-4.1 411.1-8.1 483.9 5.3c11.6 2.1 20.6 11.2 22.8 22.8c13.4 72.9 9.3 194.8-111.4 276.7c-3.5 2.4-7.3 4.8-11.3 7.2v82.3c0 25.4-13.4 49-35.3 61.9l-88.5 52.5c-7.4 4.4-16.6 4.5-24.1 .2s-12.1-12.2-12.1-20.9V380.8c-14.1 4.9-26.4 8.9-35.7 11.9c-11.2 3.6-23.4 .5-31.8-7.8zM384 168a40 40 0 1 0 0-80 40 40 0 1 0 0 80z"></path></svg> Deploy to Kubernetes</strong> to open the <strong>Deploy generated pod to Kubernetes</strong> screen.<!-- -->
<ol>
<li><strong>Pod Name</strong>: enter <code>redis-follower</code>.</li>
<li><strong>Use Kubernetes Services</strong>: select <strong>Replace <code>hostPort</code> exposure on containers by Services. It is the recommended way to expose ports, as a cluster policy might prevent to use <code>hostPort</code>.</strong></li>
<li><strong>Expose service locally using Kubernetes Ingress</strong>: deselect <strong>Create a Kubernetes ingress to get access to the ports that this pod exposes, at the default ingress controller location. Example: on a default Kind cluster created with Podman Desktop: <code>http://localhost:9090</code>. Requirements: your cluster has an ingress controller`</strong>.</li>
<li><strong>Kubernetes namespaces</strong>: select <code>default</code>.</li>
<li>Click <strong><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="rocket" class="svg-inline--fa fa-rocket fa-lg" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path fill="currentColor" d="M156.6 384.9L125.7 354c-8.5-8.5-11.5-20.8-7.7-32.2c3-8.9 7-20.5 11.8-33.8L24 288c-8.6 0-16.6-4.6-20.9-12.1s-4.2-16.7 .2-24.1l52.5-88.5c13-21.9 36.5-35.3 61.9-35.3l82.3 0c2.4-4 4.8-7.7 7.2-11.3C289.1-4.1 411.1-8.1 483.9 5.3c11.6 2.1 20.6 11.2 22.8 22.8c13.4 72.9 9.3 194.8-111.4 276.7c-3.5 2.4-7.3 4.8-11.3 7.2v82.3c0 25.4-13.4 49-35.3 61.9l-88.5 52.5c-7.4 4.4-16.6 4.5-24.1 .2s-12.1-12.2-12.1-20.9V380.8c-14.1 4.9-26.4 8.9-35.7 11.9c-11.2 3.6-23.4 .5-31.8-7.8zM384 168a40 40 0 1 0 0-80 40 40 0 1 0 0 80z"></path></svg> Deploy</strong>.
<img loading="lazy" alt="Deploy generated follower pod to Kubernetes screen" src="https://podman-desktop.io/assets/images/deploy-generated-follower-pod-to-kubernetes-dd643e002a1dbf69e29ef7863f0774d8.png" width="1292" height="968" class="img_SS3x"></li>
<li>Wait for the pod to reach the state: <strong>Phase: Running</strong>.</li>
<li>Click <strong>Done</strong>.</li>
</ol>
</li>
<li>To add replicas, repeat the last step with another <strong>Pod Name</strong> value.</li>
</ol>
<h4 class="anchor anchorWithStickyNavbar_JmGV" id="verification-3">Verification<a href="https://podman-desktop.io/blog/running-a-local-kubernetes-cluster-with-podman-desktop#verification-3" class="hash-link" aria-label="Direct link to Verification" title="Direct link to Verification"></a></h4>
<ul>
<li>
<p>The <strong><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="cubes" class="svg-inline--fa fa-cubes fa-lg" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 576 512"><path fill="currentColor" d="M290.8 48.6l78.4 29.7L288 109.5 206.8 78.3l78.4-29.7c1.8-.7 3.8-.7 5.7 0zM136 92.5V204.7c-1.3 .4-2.6 .8-3.9 1.3l-96 36.4C14.4 250.6 0 271.5 0 294.7V413.9c0 22.2 13.1 42.3 33.5 51.3l96 42.2c14.4 6.3 30.7 6.3 45.1 0L288 457.5l113.5 49.9c14.4 6.3 30.7 6.3 45.1 0l96-42.2c20.3-8.9 33.5-29.1 33.5-51.3V294.7c0-23.3-14.4-44.1-36.1-52.4l-96-36.4c-1.3-.5-2.6-.9-3.9-1.3V92.5c0-23.3-14.4-44.1-36.1-52.4l-96-36.4c-12.8-4.8-26.9-4.8-39.7 0l-96 36.4C150.4 48.4 136 69.3 136 92.5zM392 210.6l-82.4 31.2V152.6L392 121v89.6zM154.8 250.9l78.4 29.7L152 311.7 70.8 280.6l78.4-29.7c1.8-.7 3.8-.7 5.7 0zm18.8 204.4V354.8L256 323.2v95.9l-82.4 36.2zM421.2 250.9c1.8-.7 3.8-.7 5.7 0l78.4 29.7L424 311.7l-81.2-31.1 78.4-29.7zM523.2 421.2l-77.6 34.1V354.8L528 323.2v90.7c0 3.2-1.9 6-4.8 7.3z"></path></svg> Pods</strong> screen lists the running <code>redis-follower</code> pods.</p>
<p><img loading="lazy" alt="follower pods are running" src="https://podman-desktop.io/assets/images/follower-pods-are-running-be90e0689f30209b0694469405ecd6a9.png" width="668" height="286" class="img_SS3x"></p>
</li>
</ul>
<h2 class="anchor anchorWithStickyNavbar_JmGV" id="starting-the-default-frontend">Starting the default frontend<a href="https://podman-desktop.io/blog/running-a-local-kubernetes-cluster-with-podman-desktop#starting-the-default-frontend" class="hash-link" aria-label="Direct link to Starting the default frontend" title="Direct link to Starting the default frontend"></a></h2>
<p>Now that you have the Redis storage of your Guestbook up and running, start the Guestbook web servers.
Like the Redis followers, deploy the frontend using Kubernetes pods and services.</p>
<p>The Guestbook app uses a PHP frontend.
It is configured to communicate with either the Redis follower or leader Services, depending on whether the request is a read or a write.
The frontend exposes a JSON interface, and serves a jQuery-Ajax-based UX.</p>
<p>With Podman Desktop, you can prepare the Guestbook frontend image and container on your local container engine, and deploy the results to Kubernetes pods and services.
This is functionally equal to the <code>frontend</code> deployment that the Kubernetes example propose.</p>
<h4 class="anchor anchorWithStickyNavbar_JmGV" id="procedure-3">Procedure<a href="https://podman-desktop.io/blog/running-a-local-kubernetes-cluster-with-podman-desktop#procedure-3" class="hash-link" aria-label="Direct link to Procedure" title="Direct link to Procedure"></a></h4>
<ol>
<li>Open <strong><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="cloud" class="svg-inline--fa fa-cloud fa-lg" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 640 512"><path fill="currentColor" d="M0 336c0 79.5 64.5 144 144 144H512c70.7 0 128-57.3 128-128c0-61.9-44-113.6-102.4-125.4c4.1-10.7 6.4-22.4 6.4-34.6c0-53-43-96-96-96c-19.7 0-38.1 6-53.3 16.2C367 64.2 315.3 32 256 32C167.6 32 96 103.6 96 192c0 2.7 .1 5.4 .2 8.1C40.2 219.8 0 273.2 0 336z"></path></svg> Images &gt; <svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="circle-arrow-down" class="svg-inline--fa fa-circle-arrow-down fa-lg" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path fill="currentColor" d="M256 0a256 256 0 1 0 0 512A256 256 0 1 0 256 0zM127 281c-9.4-9.4-9.4-24.6 0-33.9s24.6-9.4 33.9 0l71 71L232 136c0-13.3 10.7-24 24-24s24 10.7 24 24l0 182.1 71-71c9.4-9.4 24.6-9.4 33.9 0s9.4 24.6 0 33.9L273 393c-9.4 9.4-24.6 9.4-33.9 0L127 281z"></path></svg> Pull an image</strong>.<!-- -->
<ol>
<li><strong>Image to Pull</strong>: enter <code>gcr.io/google_samples/gb-frontend:v5</code></li>
<li>Click <strong>Pull image</strong> to pull the image to your container engine local image registry.</li>
<li>Wait for the pull to complete.</li>
<li>Click <strong>Done</strong> to get back to the images list.</li>
</ol>
</li>
<li><strong><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="cloud" class="svg-inline--fa fa-cloud fa-lg" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 640 512"><path fill="currentColor" d="M0 336c0 79.5 64.5 144 144 144H512c70.7 0 128-57.3 128-128c0-61.9-44-113.6-102.4-125.4c4.1-10.7 6.4-22.4 6.4-34.6c0-53-43-96-96-96c-19.7 0-38.1 6-53.3 16.2C367 64.2 315.3 32 256 32C167.6 32 96 103.6 96 192c0 2.7 .1 5.4 .2 8.1C40.2 219.8 0 273.2 0 336z"></path></svg> Search images</strong>: enter <code>gb-frontend:v5</code> to find the image.</li>
<li>Click <strong><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="play" class="svg-inline--fa fa-play fa-lg" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 384 512"><path fill="currentColor" d="M73 39c-14.8-9.1-33.4-9.4-48.5-.9S0 62.6 0 80V432c0 17.4 9.4 33.4 24.5 41.9s33.7 8.1 48.5-.9L361 297c14.3-8.7 23-24.2 23-41s-8.7-32.2-23-41L73 39z"></path></svg></strong> to open the <strong>Create a container from image</strong> dialog.<!-- -->
<ol>
<li><strong>Container name</strong>: enter <code>frontend</code>,</li>
<li><strong>Local port for <code>80/tcp</code></strong>: <code>9000</code>.</li>
<li>Click <strong><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="play" class="svg-inline--fa fa-play fa-lg" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 384 512"><path fill="currentColor" d="M73 39c-14.8-9.1-33.4-9.4-48.5-.9S0 62.6 0 80V432c0 17.4 9.4 33.4 24.5 41.9s33.7 8.1 48.5-.9L361 297c14.3-8.7 23-24.2 23-41s-8.7-32.2-23-41L73 39z"></path></svg> Start Container</strong> to start the container in your container engine.</li>
</ol>
</li>
<li><strong><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="cloud" class="svg-inline--fa fa-cloud fa-lg" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 640 512"><path fill="currentColor" d="M0 336c0 79.5 64.5 144 144 144H512c70.7 0 128-57.3 128-128c0-61.9-44-113.6-102.4-125.4c4.1-10.7 6.4-22.4 6.4-34.6c0-53-43-96-96-96c-19.7 0-38.1 6-53.3 16.2C367 64.2 315.3 32 256 32C167.6 32 96 103.6 96 192c0 2.7 .1 5.4 .2 8.1C40.2 219.8 0 273.2 0 336z"></path></svg> Search containers</strong>: enter <code>frontend</code> to find the running container.</li>
<li>Click <strong><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="stop" class="svg-inline--fa fa-stop fa-lg" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 384 512"><path fill="currentColor" d="M0 128C0 92.7 28.7 64 64 64H320c35.3 0 64 28.7 64 64V384c0 35.3-28.7 64-64 64H64c-35.3 0-64-28.7-64-64V128z"></path></svg></strong> to stop the container: you do not need it to run in the container engine.</li>
<li>Click <strong><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="ellipsis-vertical" class="svg-inline--fa fa-ellipsis-vertical fa-lg" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 128 512"><path fill="currentColor" d="M64 360a56 56 0 1 0 0 112 56 56 0 1 0 0-112zm0-160a56 56 0 1 0 0 112 56 56 0 1 0 0-112zM120 96A56 56 0 1 0 8 96a56 56 0 1 0 112 0z"></path></svg> &gt; <svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="rocket" class="svg-inline--fa fa-rocket fa-lg" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path fill="currentColor" d="M156.6 384.9L125.7 354c-8.5-8.5-11.5-20.8-7.7-32.2c3-8.9 7-20.5 11.8-33.8L24 288c-8.6 0-16.6-4.6-20.9-12.1s-4.2-16.7 .2-24.1l52.5-88.5c13-21.9 36.5-35.3 61.9-35.3l82.3 0c2.4-4 4.8-7.7 7.2-11.3C289.1-4.1 411.1-8.1 483.9 5.3c11.6 2.1 20.6 11.2 22.8 22.8c13.4 72.9 9.3 194.8-111.4 276.7c-3.5 2.4-7.3 4.8-11.3 7.2v82.3c0 25.4-13.4 49-35.3 61.9l-88.5 52.5c-7.4 4.4-16.6 4.5-24.1 .2s-12.1-12.2-12.1-20.9V380.8c-14.1 4.9-26.4 8.9-35.7 11.9c-11.2 3.6-23.4 .5-31.8-7.8zM384 168a40 40 0 1 0 0-80 40 40 0 1 0 0 80z"></path></svg> Deploy to Kubernetes</strong> to open the <strong>Deploy generated pod to Kubernetes</strong> screen.<!-- -->
<ol>
<li><strong>Pod Name</strong>: enter <code>frontend</code>.</li>
<li><strong>Use Kubernetes Services</strong>: select <strong>Replace <code>hostPort</code> exposure on containers by Services. It is the recommended way to expose ports, as a cluster policy might prevent to use <code>hostPort</code>.</strong></li>
<li><strong>Expose service locally using Kubernetes Ingress</strong>: select <strong>Create a Kubernetes ingress to get access to the ports that this pod exposes, at the default ingress controller location. Example: on a default Kind cluster created with Podman Desktop: <code>http://localhost:9090</code>. Requirements: your cluster has an ingress controller`</strong>.</li>
<li><strong>Kubernetes namespaces</strong>: select <code>default</code>.</li>
<li>Click <strong><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="rocket" class="svg-inline--fa fa-rocket fa-lg" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path fill="currentColor" d="M156.6 384.9L125.7 354c-8.5-8.5-11.5-20.8-7.7-32.2c3-8.9 7-20.5 11.8-33.8L24 288c-8.6 0-16.6-4.6-20.9-12.1s-4.2-16.7 .2-24.1l52.5-88.5c13-21.9 36.5-35.3 61.9-35.3l82.3 0c2.4-4 4.8-7.7 7.2-11.3C289.1-4.1 411.1-8.1 483.9 5.3c11.6 2.1 20.6 11.2 22.8 22.8c13.4 72.9 9.3 194.8-111.4 276.7c-3.5 2.4-7.3 4.8-11.3 7.2v82.3c0 25.4-13.4 49-35.3 61.9l-88.5 52.5c-7.4 4.4-16.6 4.5-24.1 .2s-12.1-12.2-12.1-20.9V380.8c-14.1 4.9-26.4 8.9-35.7 11.9c-11.2 3.6-23.4 .5-31.8-7.8zM384 168a40 40 0 1 0 0-80 40 40 0 1 0 0 80z"></path></svg> Deploy</strong>.
<img loading="lazy" alt="Deploy generated frontend pod to Kubernetes screen" src="https://podman-desktop.io/assets/images/deploy-generated-frontend-pod-to-kubernetes-cf7e13dbd73427575b2cf583e223df38.png" width="1292" height="968" class="img_SS3x"></li>
<li>Wait for the pod to reach the state: <strong>Phase: Running</strong>.</li>
<li>Click <strong>Done</strong>.</li>
</ol>
</li>
</ol>
<h4 class="anchor anchorWithStickyNavbar_JmGV" id="verification-4">Verification<a href="https://podman-desktop.io/blog/running-a-local-kubernetes-cluster-with-podman-desktop#verification-4" class="hash-link" aria-label="Direct link to Verification" title="Direct link to Verification"></a></h4>
<ol>
<li>
<p>The <strong><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="cubes" class="svg-inline--fa fa-cubes fa-lg" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 576 512"><path fill="currentColor" d="M290.8 48.6l78.4 29.7L288 109.5 206.8 78.3l78.4-29.7c1.8-.7 3.8-.7 5.7 0zM136 92.5V204.7c-1.3 .4-2.6 .8-3.9 1.3l-96 36.4C14.4 250.6 0 271.5 0 294.7V413.9c0 22.2 13.1 42.3 33.5 51.3l96 42.2c14.4 6.3 30.7 6.3 45.1 0L288 457.5l113.5 49.9c14.4 6.3 30.7 6.3 45.1 0l96-42.2c20.3-8.9 33.5-29.1 33.5-51.3V294.7c0-23.3-14.4-44.1-36.1-52.4l-96-36.4c-1.3-.5-2.6-.9-3.9-1.3V92.5c0-23.3-14.4-44.1-36.1-52.4l-96-36.4c-12.8-4.8-26.9-4.8-39.7 0l-96 36.4C150.4 48.4 136 69.3 136 92.5zM392 210.6l-82.4 31.2V152.6L392 121v89.6zM154.8 250.9l78.4 29.7L152 311.7 70.8 280.6l78.4-29.7c1.8-.7 3.8-.7 5.7 0zm18.8 204.4V354.8L256 323.2v95.9l-82.4 36.2zM421.2 250.9c1.8-.7 3.8-.7 5.7 0l78.4 29.7L424 311.7l-81.2-31.1 78.4-29.7zM523.2 421.2l-77.6 34.1V354.8L528 323.2v90.7c0 3.2-1.9 6-4.8 7.3z"></path></svg> Pods</strong> screen lists the running <code>frontend</code> pod.</p>
<p><img loading="lazy" alt="frontend pod is running" src="https://podman-desktop.io/assets/images/frontend-pod-is-running-f6f55d91d200f35629788d3c550ae463.png" width="674" height="222" class="img_SS3x"></p>
</li>
<li>
<p>Go to <code>http://localhost:9090</code>: the Guestbook application is running.</p>
</li>
</ol>]]></content:encoded>
<category>podman-desktop</category>
<category>story</category>
<category>kubernetes</category>
<category>kind</category>
</item>
<item>
<title><![CDATA[Release Notes - Podman Desktop 0.14]]></title>
<link>https://podman-desktop.io/blog/podman-desktop-release-0.14</link>
<guid>https://podman-desktop.io/blog/podman-desktop-release-0.14</guid>
<pubDate>Fri, 14 Apr 2023 00:00:00 GMT</pubDate>
<description><![CDATA[Podman Desktop 0.14 has been released!]]></description>
<content:encoded><![CDATA[<p>Podman Desktop 0.14 - Our Kind-est release yet!</p>
<p>We have been working on a Kind extension for a while now, and decided it is time to promote it
into a release just in time for KubeCon and CloudNativeCon Europe!</p>
<p>We're especially excited about releasing Kind because it finally shows the full purpose
of Podman Desktop: not just local container engines, but Kubernetes too. More importantly,
providing tools that allow you to manage both environments and seamlessly move between them.</p>
<p>Some of these features were available in development mode over the last few releases,
but since they are now in the release build, we will do a full roundup and talk about
all the Kind features.</p>
<ul>
<li><strong>Kind Installation</strong>: Install Kind from the status bar</li>
<li><strong>Manage Kind Clusters</strong>: Create and manage Kind clusters from <strong><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="gear" class="svg-inline--fa fa-gear fa-lg" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path fill="currentColor" d="M495.9 166.6c3.2 8.7 .5 18.4-6.4 24.6l-43.3 39.4c1.1 8.3 1.7 16.8 1.7 25.4s-.6 17.1-1.7 25.4l43.3 39.4c6.9 6.2 9.6 15.9 6.4 24.6c-4.4 11.9-9.7 23.3-15.8 34.3l-4.7 8.1c-6.6 11-14 21.4-22.1 31.2c-5.9 7.2-15.7 9.6-24.5 6.8l-55.7-17.7c-13.4 10.3-28.2 18.9-44 25.4l-12.5 57.1c-2 9.1-9 16.3-18.2 17.8c-13.8 2.3-28 3.5-42.5 3.5s-28.7-1.2-42.5-3.5c-9.2-1.5-16.2-8.7-18.2-17.8l-12.5-57.1c-15.8-6.5-30.6-15.1-44-25.4L83.1 425.9c-8.8 2.8-18.6 .3-24.5-6.8c-8.1-9.8-15.5-20.2-22.1-31.2l-4.7-8.1c-6.1-11-11.4-22.4-15.8-34.3c-3.2-8.7-.5-18.4 6.4-24.6l43.3-39.4C64.6 273.1 64 264.6 64 256s.6-17.1 1.7-25.4L22.4 191.2c-6.9-6.2-9.6-15.9-6.4-24.6c4.4-11.9 9.7-23.3 15.8-34.3l4.7-8.1c6.6-11 14-21.4 22.1-31.2c5.9-7.2 15.7-9.6 24.5-6.8l55.7 17.7c13.4-10.3 28.2-18.9 44-25.4l12.5-57.1c2-9.1 9-16.3 18.2-17.8C227.3 1.2 241.5 0 256 0s28.7 1.2 42.5 3.5c9.2 1.5 16.2 8.7 18.2 17.8l12.5 57.1c15.8 6.5 30.6 15.1 44 25.4l55.7-17.7c8.8-2.8 18.6-.3 24.5 6.8c8.1 9.8 15.5 20.2 22.1 31.2l4.7 8.1c6.1 11 11.4 22.4 15.8 34.3zM256 336a80 80 0 1 0 0-160 80 80 0 1 0 0 160z"></path></svg> Settings &gt; Resources</strong></li>
<li><strong>Using Kind</strong>: Deploying YAML and sharing images to a cluster</li>
<li><strong>Kind Ingress</strong>: Install a Contour ingress controller</li>
<li><strong>UX and UI Improvements</strong>: Updated preferences and telemetry prompt</li>
</ul>
<p>Podman Desktop 0.14 is now available. <a href="https://podman-desktop.io/downloads">Click here to download it</a>!</p>
<p><img loading="lazy" alt="Podman-desktop-0-14-hero" src="https://podman-desktop.io/assets/images/podman-desktop-release-0.14-5d7adb6814b7191ab2623cdd431642f3.png" width="1140" height="1097" class="img_SS3x"></p>
<hr>
<h2 class="anchor anchorWithStickyNavbar_JmGV" id="release-details">Release details<a href="https://podman-desktop.io/blog/podman-desktop-release-0.14#release-details" class="hash-link" aria-label="Direct link to Release details" title="Direct link to Release details"></a></h2>
<h3 class="anchor anchorWithStickyNavbar_JmGV" id="kind-installation">Kind Installation<a href="https://podman-desktop.io/blog/podman-desktop-release-0.14#kind-installation" class="hash-link" aria-label="Direct link to Kind Installation" title="Direct link to Kind Installation"></a></h3>
<p>Get Kind up and running in seconds! The Kind extension is now bundled as part of Podman Desktop
<a href="https://github.com/containers/podman-desktop/issues/1421" target="_blank" rel="noopener noreferrer">1421</a>
and allows you to easily <a href="https://podman-desktop.io/docs/kind/installing">install Kind directly from the status bar</a>
<a href="https://github.com/containers/podman-desktop/issues/1257" target="_blank" rel="noopener noreferrer">1257</a>.</p>
<p>The installed <code>kind</code> CLI is available from the system shell <a href="https://github.com/containers/podman-desktop/issues/1516" target="_blank" rel="noopener noreferrer">1516</a>,
allowing you to open a terminal window to <code>kind get clusters</code> or work with other tools.</p>
<h3 class="anchor anchorWithStickyNavbar_JmGV" id="manage-kind-clusters">Manage Kind Clusters<a href="https://podman-desktop.io/blog/podman-desktop-release-0.14#manage-kind-clusters" class="hash-link" aria-label="Direct link to Manage Kind Clusters" title="Direct link to Manage Kind Clusters"></a></h3>
<p>Once Kind is installed (or if you already had it), you can manage your clusters in <strong><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="gear" class="svg-inline--fa fa-gear fa-lg" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path fill="currentColor" d="M495.9 166.6c3.2 8.7 .5 18.4-6.4 24.6l-43.3 39.4c1.1 8.3 1.7 16.8 1.7 25.4s-.6 17.1-1.7 25.4l43.3 39.4c6.9 6.2 9.6 15.9 6.4 24.6c-4.4 11.9-9.7 23.3-15.8 34.3l-4.7 8.1c-6.6 11-14 21.4-22.1 31.2c-5.9 7.2-15.7 9.6-24.5 6.8l-55.7-17.7c-13.4 10.3-28.2 18.9-44 25.4l-12.5 57.1c-2 9.1-9 16.3-18.2 17.8c-13.8 2.3-28 3.5-42.5 3.5s-28.7-1.2-42.5-3.5c-9.2-1.5-16.2-8.7-18.2-17.8l-12.5-57.1c-15.8-6.5-30.6-15.1-44-25.4L83.1 425.9c-8.8 2.8-18.6 .3-24.5-6.8c-8.1-9.8-15.5-20.2-22.1-31.2l-4.7-8.1c-6.1-11-11.4-22.4-15.8-34.3c-3.2-8.7-.5-18.4 6.4-24.6l43.3-39.4C64.6 273.1 64 264.6 64 256s.6-17.1 1.7-25.4L22.4 191.2c-6.9-6.2-9.6-15.9-6.4-24.6c4.4-11.9 9.7-23.3 15.8-34.3l4.7-8.1c6.6-11 14-21.4 22.1-31.2c5.9-7.2 15.7-9.6 24.5-6.8l55.7 17.7c13.4-10.3 28.2-18.9 44-25.4l12.5-57.1c2-9.1 9-16.3 18.2-17.8C227.3 1.2 241.5 0 256 0s28.7 1.2 42.5 3.5c9.2 1.5 16.2 8.7 18.2 17.8l12.5 57.1c15.8 6.5 30.6 15.1 44 25.4l55.7-17.7c8.8-2.8 18.6-.3 24.5 6.8c8.1 9.8 15.5 20.2 22.1 31.2l4.7 8.1c6.1 11 11.4 22.4 15.8 34.3zM256 336a80 80 0 1 0 0-160 80 80 0 1 0 0 160z"></path></svg> Settings &gt; Resources</strong>.
From here you can <a href="https://podman-desktop.io/docs/kind/creating-a-kind-cluster">create Kind clusters</a>,
start/stop <a href="https://github.com/containers/podman-desktop/issues/1953" target="_blank" rel="noopener noreferrer">1953</a>
or delete <a href="https://github.com/containers/podman-desktop/issues/1977" target="_blank" rel="noopener noreferrer">1977</a> them.</p>
<p><img loading="lazy" alt="kind-clusters" src="https://podman-desktop.io/assets/images/kind-clusters-580828529dfdd23680262d7ee586823d.png" width="1484" height="364" class="img_SS3x"></p>
<p>The Kind control plane runs as a container. You will see this container
in the <strong>Container</strong> list and can also start or stop it from there.</p>
<h3 class="anchor anchorWithStickyNavbar_JmGV" id="using-kind">Using Kind<a href="https://podman-desktop.io/blog/podman-desktop-release-0.14#using-kind" class="hash-link" aria-label="Direct link to Using Kind" title="Direct link to Using Kind"></a></h3>
<p>Now that you have Kind installed and running, what can you do with it?
If you like terminals, you can always open one up and use the Kind CLI to
<a href="https://kind.sigs.k8s.io/docs/user/quick-start/#interacting-with-your-cluster" target="_blank" rel="noopener noreferrer">interact with your cluster</a>.</p>
<p>Within Podman Desktop we have started with two ways to interact with the cluster.
The first is the ability to play local YAML files on your Kind (or any other Kubernetes!) cluster <a href="https://github.com/containers/podman-desktop/issues/1261" target="_blank" rel="noopener noreferrer">1261</a>. This allows you to take existing Kubernetes YAML definitions -
your deployments, services, or other objects - and deploy it to the cluster.</p>
<div style="width:100%;height:100%"></div>
<p>As you deploy pods, they will automatically appear in the list of <strong>Pods</strong> <a href="https://github.com/containers/podman-desktop/issues/1263" target="_blank" rel="noopener noreferrer">1263</a>, allowing you to start, stop, and interact them just like pods running on Podman.</p>
<p>One of the most common uses is to deploy a container that you have been running on Podman, and this will fail
if the image is not available in Kind. To solve this we have made it easy to push images from
Podman to Kind <a href="https://github.com/containers/podman-desktop/issues/1448" target="_blank" rel="noopener noreferrer">1448</a>.</p>
<p><img loading="lazy" alt="push-image-kind" src="https://podman-desktop.io/assets/images/push-image-kind-ea3f19b80ab3ce13cdfadbbb63762780.png" width="1054" height="152" class="img_SS3x"></p>
<h3 class="anchor anchorWithStickyNavbar_JmGV" id="kind-ingress">Kind Ingress<a href="https://podman-desktop.io/blog/podman-desktop-release-0.14#kind-ingress" class="hash-link" aria-label="Direct link to Kind Ingress" title="Direct link to Kind Ingress"></a></h3>
<p>If you deploy a pod to Kind, you are also going to want to reach it! To do this you will need to install a load balancer or
ingress controller so that the pod is accessible from outside the cluster. We made it easy to install the Contour ingress
controller while creating a Kind cluster <a href="https://github.com/containers/podman-desktop/issues/1675" target="_blank" rel="noopener noreferrer">1675</a>,
so if you created your cluster with Podman Desktop it is already there!</p>
<p><img loading="lazy" alt="kind-ingress" src="https://podman-desktop.io/assets/images/kind-ingress-ab2dd4054a7ce838c758ddc0d98cc5cb.png" width="1328" height="1238" class="img_SS3x"></p>
<p>We have several other Kind and Kubernetes features planned to expand the supported scenarios, but hopefully this
makes it easy to get started with Kind and shows where we're headed. As always, feedback is appreciated!</p>
<h3 class="anchor anchorWithStickyNavbar_JmGV" id="ui-and-ux-improvements">UI and UX improvements<a href="https://podman-desktop.io/blog/podman-desktop-release-0.14#ui-and-ux-improvements" class="hash-link" aria-label="Direct link to UI and UX improvements" title="Direct link to UI and UX improvements"></a></h3>
<h4 class="anchor anchorWithStickyNavbar_JmGV" id="updated-preferences">Updated Preferences<a href="https://podman-desktop.io/blog/podman-desktop-release-0.14#updated-preferences" class="hash-link" aria-label="Direct link to Updated Preferences" title="Direct link to Updated Preferences"></a></h4>
<p>The <strong><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="gear" class="svg-inline--fa fa-gear fa-lg" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path fill="currentColor" d="M495.9 166.6c3.2 8.7 .5 18.4-6.4 24.6l-43.3 39.4c1.1 8.3 1.7 16.8 1.7 25.4s-.6 17.1-1.7 25.4l43.3 39.4c6.9 6.2 9.6 15.9 6.4 24.6c-4.4 11.9-9.7 23.3-15.8 34.3l-4.7 8.1c-6.6 11-14 21.4-22.1 31.2c-5.9 7.2-15.7 9.6-24.5 6.8l-55.7-17.7c-13.4 10.3-28.2 18.9-44 25.4l-12.5 57.1c-2 9.1-9 16.3-18.2 17.8c-13.8 2.3-28 3.5-42.5 3.5s-28.7-1.2-42.5-3.5c-9.2-1.5-16.2-8.7-18.2-17.8l-12.5-57.1c-15.8-6.5-30.6-15.1-44-25.4L83.1 425.9c-8.8 2.8-18.6 .3-24.5-6.8c-8.1-9.8-15.5-20.2-22.1-31.2l-4.7-8.1c-6.1-11-11.4-22.4-15.8-34.3c-3.2-8.7-.5-18.4 6.4-24.6l43.3-39.4C64.6 273.1 64 264.6 64 256s.6-17.1 1.7-25.4L22.4 191.2c-6.9-6.2-9.6-15.9-6.4-24.6c4.4-11.9 9.7-23.3 15.8-34.3l4.7-8.1c6.6-11 14-21.4 22.1-31.2c5.9-7.2 15.7-9.6 24.5-6.8l55.7 17.7c13.4-10.3 28.2-18.9 44-25.4l12.5-57.1c2-9.1 9-16.3 18.2-17.8C227.3 1.2 241.5 0 256 0s28.7 1.2 42.5 3.5c9.2 1.5 16.2 8.7 18.2 17.8l12.5 57.1c15.8 6.5 30.6 15.1 44 25.4l55.7-17.7c8.8-2.8 18.6-.3 24.5 6.8c8.1 9.8 15.5 20.2 22.1 31.2l4.7 8.1c6.1 11 11.4 22.4 15.8 34.3zM256 336a80 80 0 1 0 0-160 80 80 0 1 0 0 160z"></path></svg> Settings &gt; Preferences</strong> page has been updated with a new design <a href="https://github.com/containers/podman-desktop/pull/1913" target="_blank" rel="noopener noreferrer">1913</a>,
making it easier to see and change preferences. Changes are live, no more Update button.</p>
<p><img loading="lazy" src="https://user-images.githubusercontent.com/49404737/229498507-e754b55c-dcbd-486d-9ee3-a1fe3bed7271.gif" alt="preferences" class="img_SS3x"></p>
<h4 class="anchor anchorWithStickyNavbar_JmGV" id="telemetry-prompt">Telemetry Prompt<a href="https://podman-desktop.io/blog/podman-desktop-release-0.14#telemetry-prompt" class="hash-link" aria-label="Direct link to Telemetry Prompt" title="Direct link to Telemetry Prompt"></a></h4>
<p>The prompt to enable or disable telemetry has been moved from its own dialog into the <strong>Welcome</strong> screen.
<a href="https://github.com/containers/podman-desktop/pull/1927" target="_blank" rel="noopener noreferrer">1927</a>
This is more usable, one less prompt, and solves a window-layering issue for some users!</p>
<p><img loading="lazy" src="https://user-images.githubusercontent.com/19958075/229577331-365a9a01-0426-4482-a95d-f5dfe39af90a.png" alt="telemetry prompt" class="img_SS3x"></p>
<hr>
<h2 class="anchor anchorWithStickyNavbar_JmGV" id="other-notable-enhancements">Other notable enhancements<a href="https://podman-desktop.io/blog/podman-desktop-release-0.14#other-notable-enhancements" class="hash-link" aria-label="Direct link to Other notable enhancements" title="Direct link to Other notable enhancements"></a></h2>
<ul>
<li>Extension support for opening an external URL <a href="https://github.com/containers/podman-desktop/pull/2028" target="_blank" rel="noopener noreferrer">2028</a> and
accessing the clipboard <a href="https://github.com/containers/podman-desktop/pull/2023" target="_blank" rel="noopener noreferrer">2023</a></li>
</ul>
<hr>
<h2 class="anchor anchorWithStickyNavbar_JmGV" id="documentation">Documentation<a href="https://podman-desktop.io/blog/podman-desktop-release-0.14#documentation" class="hash-link" aria-label="Direct link to Documentation" title="Direct link to Documentation"></a></h2>
<p>Naturally, we have a section in the documentation just for <a href="https://podman-desktop.io/docs/kind" target="_blank" rel="noopener noreferrer">Kind</a>.</p>
<hr>
<h2 class="anchor anchorWithStickyNavbar_JmGV" id="notable-bug-fixes">Notable bug fixes<a href="https://podman-desktop.io/blog/podman-desktop-release-0.14#notable-bug-fixes" class="hash-link" aria-label="Direct link to Notable bug fixes" title="Direct link to Notable bug fixes"></a></h2>
<ul>
<li>Avoid a dialog box if unable to check for updates <a href="https://github.com/containers/podman-desktop/pull/2062" target="_blank" rel="noopener noreferrer">2062</a></li>
<li>Unable to get to the Dashboard if Kind (or Kubernetes) cluster was not running <a href="https://github.com/containers/podman-desktop/issues/2052" target="_blank" rel="noopener noreferrer">2052</a></li>
</ul>
<hr>
<h2 class="anchor anchorWithStickyNavbar_JmGV" id="final-notes">Final notes<a href="https://podman-desktop.io/blog/podman-desktop-release-0.14#final-notes" class="hash-link" aria-label="Direct link to Final notes" title="Direct link to Final notes"></a></h2>
<p>The complete list of issues fixed in this release is available <a href="https://github.com/containers/podman-desktop/issues?q=is%3Aclosed+milestone%3A0.14.0" target="_blank" rel="noopener noreferrer">here</a>.</p>
<p>Get the latest release from the <a href="https://podman-desktop.io/downloads">Downloads</a> section of the website and boost your development journey with Podman Desktop. Additionally, visit the <a href="https://github.com/containers/podman-desktop" target="_blank" rel="noopener noreferrer">GitHub repository</a> and see how you can help us make Podman Desktop better.</p>]]></content:encoded>
<category>podman-desktop</category>
<category>release</category>
<category>kubernetes</category>
<category>kind</category>
</item>
<item>
<title><![CDATA[Release Notes - Podman Desktop 0.13]]></title>
<link>https://podman-desktop.io/blog/podman-desktop-release-0.13</link>
<guid>https://podman-desktop.io/blog/podman-desktop-release-0.13</guid>
<pubDate>Wed, 29 Mar 2023 00:00:00 GMT</pubDate>
<description><![CDATA[Podman Desktop 0.13 has been released!]]></description>
<content:encoded><![CDATA[<p>This release note covers Podman Desktop 0.13 release changes.</p>
<ul>
<li><strong>Podman Version</strong>: Podman 4.4.4 now included in Windows and Mac installers.</li>
<li><strong>Compose</strong>: Support for installing Docker Compose.</li>
<li><strong>Extensions</strong>: Improved extension support for Podman Desktop with additional capabilities.</li>
<li><strong>UX and UI Improvements</strong>: Welcome page, task manager, resources, and update alerts.</li>
</ul>
<p>Podman Desktop 0.13 is now available. <a href="https://podman-desktop.io/downloads">Click here to download it</a>!</p>
<p><img loading="lazy" alt="Podman-desktop-0-13-hero" src="https://podman-desktop.io/assets/images/podman-desktop-release-0.13-a15251500e13ad05b8a7b404ab301f34.png" width="1852" height="1323" class="img_SS3x"></p>
<hr>
<h2 class="anchor anchorWithStickyNavbar_JmGV" id="release-details">Release details<a href="https://podman-desktop.io/blog/podman-desktop-release-0.13#release-details" class="hash-link" aria-label="Direct link to Release details" title="Direct link to Release details"></a></h2>
<h3 class="anchor anchorWithStickyNavbar_JmGV" id="update-to-podman-v444">Update to Podman v4.4.4<a href="https://podman-desktop.io/blog/podman-desktop-release-0.13#update-to-podman-v444" class="hash-link" aria-label="Direct link to Update to Podman v4.4.4" title="Direct link to Update to Podman v4.4.4"></a></h3>
<p>Podman Desktop 0.13 embeds <a href="https://github.com/containers/podman/releases/tag/v4.4.4" target="_blank" rel="noopener noreferrer">Podman 4.4.4</a> in
Windows and macOS installers <a href="https://github.com/containers/podman-desktop/pull/1456" target="_blank" rel="noopener noreferrer">#1456</a>.</p>
<h3 class="anchor anchorWithStickyNavbar_JmGV" id="compose-support">Compose support<a href="https://podman-desktop.io/blog/podman-desktop-release-0.13#compose-support" class="hash-link" aria-label="Direct link to Compose support" title="Direct link to Compose support"></a></h3>
<p>You can install Docker Compose from the Podman Desktop UI <a href="https://github.com/containers/podman-desktop/pull/1578" target="_blank" rel="noopener noreferrer">#1578</a>. This will allow you use Compose workflows using Podman.</p>
<h3 class="anchor anchorWithStickyNavbar_JmGV" id="extensions">Extensions<a href="https://podman-desktop.io/blog/podman-desktop-release-0.13#extensions" class="hash-link" aria-label="Direct link to Extensions" title="Direct link to Extensions"></a></h3>
<p>To make it easier to extend Podman Desktop we have:</p>
<ul>
<li>Published the <a href="https://www.npmjs.com/package/@podman-desktop/api" target="_blank" rel="noopener noreferrer">Podman Desktop Extension API</a> to npmjs <a href="https://github.com/containers/podman-desktop/pull/1727" target="_blank" rel="noopener noreferrer">#1727</a></li>
<li>Documented <a href="https://podman-desktop.io/docs/extensions" target="_blank" rel="noopener noreferrer">how to create, publish, and install your own extensions</a></li>
<li>Expanded the API for <code>QuickPickInput</code> <a href="https://github.com/containers/podman-desktop/pull/1839" target="_blank" rel="noopener noreferrer">#1839</a></li>
</ul>
<h3 class="anchor anchorWithStickyNavbar_JmGV" id="ui-and-ux-improvements">UI and UX improvements<a href="https://podman-desktop.io/blog/podman-desktop-release-0.13#ui-and-ux-improvements" class="hash-link" aria-label="Direct link to UI and UX improvements" title="Direct link to UI and UX improvements"></a></h3>
<h4 class="anchor anchorWithStickyNavbar_JmGV" id="welcome-page-1726">Welcome page <a href="https://github.com/containers/podman-desktop/pull/1726" target="_blank" rel="noopener noreferrer">#1726</a><a href="https://podman-desktop.io/blog/podman-desktop-release-0.13#welcome-page-1726" class="hash-link" aria-label="Direct link to welcome-page-1726" title="Direct link to welcome-page-1726"></a></h4>
<p>The first time every user starts Podman Desktop, they will see a welcome page:</p>
<p><img loading="lazy" src="https://user-images.githubusercontent.com/19958075/225682776-e016ba31-5bb9-41d5-87ed-f93caeb3fb84.png" alt="welcome-page" class="img_SS3x"></p>
<p>Note that the Welcome page will only appear the first time you run Podman Desktop 0.13.0, and none of your settings or assets in Podman Desktop will be affected by it.
Over time, this page will be expanded to help with initial setup and configuration.</p>
<h4 class="anchor anchorWithStickyNavbar_JmGV" id="new-task-manager-1724">New Task Manager <a href="https://github.com/containers/podman-desktop/pull/1724" target="_blank" rel="noopener noreferrer">#1724</a><a href="https://podman-desktop.io/blog/podman-desktop-release-0.13#new-task-manager-1724" class="hash-link" aria-label="Direct link to new-task-manager-1724" title="Direct link to new-task-manager-1724"></a></h4>
<p>A new Task Manager has been added to the status bar to see the progress (or return to) long running tasks. To start with, building images <a href="https://github.com/containers/podman-desktop/pull/1725" target="_blank" rel="noopener noreferrer">#1725</a> and Podman machine <a href="https://github.com/containers/podman-desktop/pull/1742" target="_blank" rel="noopener noreferrer">#1742</a> are using the task manager.</p>
<p><img loading="lazy" alt="task-manager" src="https://podman-desktop.io/assets/images/task-manager-2c9725a8db209c3607e83a24d9ea1582.png" width="2082" height="1198" class="img_SS3x"></p>
<h4 class="anchor anchorWithStickyNavbar_JmGV" id="updated-resources-settings-1582">Updated Resources Settings <a href="https://github.com/containers/podman-desktop/pull/1582" target="_blank" rel="noopener noreferrer">#1582</a><a href="https://podman-desktop.io/blog/podman-desktop-release-0.13#updated-resources-settings-1582" class="hash-link" aria-label="Direct link to updated-resources-settings-1582" title="Direct link to updated-resources-settings-1582"></a></h4>
<p>The <strong><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="gear" class="svg-inline--fa fa-gear fa-lg" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path fill="currentColor" d="M495.9 166.6c3.2 8.7 .5 18.4-6.4 24.6l-43.3 39.4c1.1 8.3 1.7 16.8 1.7 25.4s-.6 17.1-1.7 25.4l43.3 39.4c6.9 6.2 9.6 15.9 6.4 24.6c-4.4 11.9-9.7 23.3-15.8 34.3l-4.7 8.1c-6.6 11-14 21.4-22.1 31.2c-5.9 7.2-15.7 9.6-24.5 6.8l-55.7-17.7c-13.4 10.3-28.2 18.9-44 25.4l-12.5 57.1c-2 9.1-9 16.3-18.2 17.8c-13.8 2.3-28 3.5-42.5 3.5s-28.7-1.2-42.5-3.5c-9.2-1.5-16.2-8.7-18.2-17.8l-12.5-57.1c-15.8-6.5-30.6-15.1-44-25.4L83.1 425.9c-8.8 2.8-18.6 .3-24.5-6.8c-8.1-9.8-15.5-20.2-22.1-31.2l-4.7-8.1c-6.1-11-11.4-22.4-15.8-34.3c-3.2-8.7-.5-18.4 6.4-24.6l43.3-39.4C64.6 273.1 64 264.6 64 256s.6-17.1 1.7-25.4L22.4 191.2c-6.9-6.2-9.6-15.9-6.4-24.6c4.4-11.9 9.7-23.3 15.8-34.3l4.7-8.1c6.6-11 14-21.4 22.1-31.2c5.9-7.2 15.7-9.6 24.5-6.8l55.7 17.7c13.4-10.3 28.2-18.9 44-25.4l12.5-57.1c2-9.1 9-16.3 18.2-17.8C227.3 1.2 241.5 0 256 0s28.7 1.2 42.5 3.5c9.2 1.5 16.2 8.7 18.2 17.8l12.5 57.1c15.8 6.5 30.6 15.1 44 25.4l55.7-17.7c8.8-2.8 18.6-.3 24.5 6.8c8.1 9.8 15.5 20.2 22.1 31.2l4.7 8.1c6.1 11 11.4 22.4 15.8 34.3zM256 336a80 80 0 1 0 0-160 80 80 0 1 0 0 160z"></path></svg> Settings &gt; Resources</strong> page has been updated with a new design, making it easier to see and control your providers from a single place.</p>
<p><img loading="lazy" src="https://user-images.githubusercontent.com/49404737/221908815-595715fe-4c95-4087-89e0-45e5544ed5c9.gif" alt="resources" class="img_SS3x"></p>
<p>The other settings pages have been updated for consistency with this new design.</p>
<h4 class="anchor anchorWithStickyNavbar_JmGV" id="update-alerts-1827">Update Alerts <a href="https://github.com/containers/podman-desktop/pull/1827" target="_blank" rel="noopener noreferrer">#1827</a><a href="https://podman-desktop.io/blog/podman-desktop-release-0.13#update-alerts-1827" class="hash-link" aria-label="Direct link to update-alerts-1827" title="Direct link to update-alerts-1827"></a></h4>
<p>A new alert button will appear in the status bar when future updates are available.</p>
<div style="width:100%;height:100%"></div>
<h4 class="anchor anchorWithStickyNavbar_JmGV" id="prune-buttons-1481-1482-1484">Prune buttons <a href="https://github.com/containers/podman-desktop/pull/1481" target="_blank" rel="noopener noreferrer">#1481</a>, <a href="https://github.com/containers/podman-desktop/pull/1482" target="_blank" rel="noopener noreferrer">#1482</a>, <a href="https://github.com/containers/podman-desktop/pull/1484" target="_blank" rel="noopener noreferrer">#1484</a><a href="https://podman-desktop.io/blog/podman-desktop-release-0.13#prune-buttons-1481-1482-1484" class="hash-link" aria-label="Direct link to prune-buttons-1481-1482-1484" title="Direct link to prune-buttons-1481-1482-1484"></a></h4>
<p>We've added buttons to prune unused volumes <a href="https://github.com/containers/podman-desktop/pull/1481" target="_blank" rel="noopener noreferrer">#1481</a>, images <a href="https://github.com/containers/podman-desktop/pull/1482" target="_blank" rel="noopener noreferrer">#1482</a> and pods <a href="https://github.com/containers/podman-desktop/pull/1484" target="_blank" rel="noopener noreferrer">#1484</a>.</p>
<p><img loading="lazy" alt="prune-image" src="https://podman-desktop.io/assets/images/prune-image-96f9366ae264c822b47bfc350d987451.png" width="2074" height="570" class="img_SS3x"></p>
<hr>
<h2 class="anchor anchorWithStickyNavbar_JmGV" id="other-notable-enhancements">Other notable enhancements<a href="https://podman-desktop.io/blog/podman-desktop-release-0.13#other-notable-enhancements" class="hash-link" aria-label="Direct link to Other notable enhancements" title="Direct link to Other notable enhancements"></a></h2>
<ul>
<li>Kubernetes pods are now shown in the Pods view <a href="https://github.com/containers/podman-desktop/pull/1312" target="_blank" rel="noopener noreferrer">#1312</a></li>
<li>Easy button to fix Docker compatibility mode on macOS <a href="https://github.com/containers/podman-desktop/pull/1697" target="_blank" rel="noopener noreferrer">#1697</a></li>
<li>Display extension icons <a href="https://github.com/containers/podman-desktop/pull/1058" target="_blank" rel="noopener noreferrer">#1058</a></li>
<li>API to cancel long running tasks <a href="https://github.com/containers/podman-desktop/pull/1777" target="_blank" rel="noopener noreferrer">#1777</a></li>
</ul>
<hr>
<h2 class="anchor anchorWithStickyNavbar_JmGV" id="documentation">Documentation<a href="https://podman-desktop.io/blog/podman-desktop-release-0.13#documentation" class="hash-link" aria-label="Direct link to Documentation" title="Direct link to Documentation"></a></h2>
<p>The documentation has new content:</p>
<ul>
<li><a href="https://podman-desktop.io/docs/extensions" target="_blank" rel="noopener noreferrer">How to create, publish, and install your own Podman Desktop extensions</a></li>
<li><a href="https://podman-desktop.io/docs/compose/podman-compose" target="_blank" rel="noopener noreferrer">Using Compose</a></li>
<li><a href="https://podman-desktop.io/docs/kind" target="_blank" rel="noopener noreferrer">Restarting Kind</a></li>
</ul>
<hr>
<h2 class="anchor anchorWithStickyNavbar_JmGV" id="notable-bug-fixes">Notable bug fixes<a href="https://podman-desktop.io/blog/podman-desktop-release-0.13#notable-bug-fixes" class="hash-link" aria-label="Direct link to Notable bug fixes" title="Direct link to Notable bug fixes"></a></h2>
<ul>
<li>Periodically check and refresh Podman connection on Windows and Mac <a href="https://github.com/containers/podman-desktop/pull/1662" target="_blank" rel="noopener noreferrer">#1662</a></li>
<li>Fix inconsistent Log view behaviour <a href="https://github.com/containers/podman-desktop/pull/1710" target="_blank" rel="noopener noreferrer">#1710</a></li>
<li>Don't create route for regular Kubernetes clusters <a href="https://github.com/containers/podman-desktop/pull/1707" target="_blank" rel="noopener noreferrer">#1707</a></li>
<li>Fix copy button on empty screen <a href="https://github.com/containers/podman-desktop/pull/1804" target="_blank" rel="noopener noreferrer">#1804</a></li>
<li>Register extension tray items correctly <a href="https://github.com/containers/podman-desktop/pull/1778" target="_blank" rel="noopener noreferrer">#1778</a> and handle updates <a href="https://github.com/containers/podman-desktop/pull/1800" target="_blank" rel="noopener noreferrer">#1800</a></li>
</ul>
<hr>
<h2 class="anchor anchorWithStickyNavbar_JmGV" id="community-thank-you">Community thank you<a href="https://podman-desktop.io/blog/podman-desktop-release-0.13#community-thank-you" class="hash-link" aria-label="Direct link to Community thank you" title="Direct link to Community thank you"></a></h2>
<p>🎉 Wed like to say a big thank you to everyone who helped to make Podman Desktop 0.13 even better:</p>
<ul>
<li><a href="https://github.com/Tony-Sol" target="_blank" rel="noopener noreferrer"><code>Tony Soloveyv</code></a> in <a href="https://github.com/containers/podman-desktop/pull/1605" target="_blank" rel="noopener noreferrer">#1605 - Fix directories inconsistency in <code>~/.local/share/</code></a></li>
<li><a href="https://github.com/RobotSail" target="_blank" rel="noopener noreferrer"><code>Oleg</code></a> in <a href="https://github.com/containers/podman-desktop/pull/1567" target="_blank" rel="noopener noreferrer">#1567 - Check for Flatpak when calling command from exec</a></li>
<li><a href="https://github.com/cblecker" target="_blank" rel="noopener noreferrer"><code>Christoph Blecker</code></a> in <a href="https://github.com/containers/podman-desktop/pull/1556" target="_blank" rel="noopener noreferrer">#1556 - Fix: Hide dock icon on macOS if starting minimized</a></li>
<li><a href="https://github.com/pwright" target="_blank" rel="noopener noreferrer"><code>Paul Wright</code></a> in <a href="https://github.com/containers/podman-desktop/pull/1604" target="_blank" rel="noopener noreferrer">#1604 - Docs: correct syntax of kind doc</a></li>
<li><a href="https://github.com/dgolovin" target="_blank" rel="noopener noreferrer"><code>Denis Golovin</code></a> in <a href="https://github.com/containers/podman-desktop/pull/1790" target="_blank" rel="noopener noreferrer">#1790 - Feat: add EventEmitter class to extension API</a></li>
<li><a href="https://github.com/cfergeau" target="_blank" rel="noopener noreferrer"><code>Christophe Fergeau</code></a> in <a href="https://github.com/containers/podman-desktop/pull/1642" target="_blank" rel="noopener noreferrer">#1642 - Fix: Pod list "an pod" typing error</a></li>
</ul>
<h2 class="anchor anchorWithStickyNavbar_JmGV" id="final-notes">Final notes<a href="https://podman-desktop.io/blog/podman-desktop-release-0.13#final-notes" class="hash-link" aria-label="Direct link to Final notes" title="Direct link to Final notes"></a></h2>
<p>The complete list of issues fixed in this release is available <a href="https://github.com/containers/podman-desktop/issues?q=is%3Aclosed+milestone%3A0.13.0" target="_blank" rel="noopener noreferrer">here</a>.</p>
<p>Get the latest release from the <a href="https://podman-desktop.io/downloads">Downloads</a> section of the website and boost your development journey with Podman Desktop. Additionally, visit the <a href="https://github.com/containers/podman-desktop" target="_blank" rel="noopener noreferrer">GitHub repository</a> and see how you can help us make Podman Desktop better.</p>]]></content:encoded>
<category>podman-desktop</category>
<category>release</category>
<category>kubernetes</category>
<category>compose</category>
</item>
<item>
<title><![CDATA[5 things to know about Podman Desktop for a Docker user]]></title>
<link>https://podman-desktop.io/blog/5-things-to-know-for-a-docker-user</link>
<guid>https://podman-desktop.io/blog/5-things-to-know-for-a-docker-user</guid>
<pubDate>Fri, 24 Mar 2023 00:00:00 GMT</pubDate>
<description><![CDATA[Important things to know when switching from Docker Desktop to Podman Desktop]]></description>
<content:encoded><![CDATA[<p>The 5 things to know being a Docker user by using Podman Desktop:</p>
<ul>
<li><strong>Use a single UI</strong>: Podman Desktop works with several container engines, including Docker.</li>
<li>The <strong>compatibility mode</strong>: How to ensure tools are working with Podman instead of Docker.</li>
<li><strong>Compose</strong> support: How to work with Compose files and Podman.</li>
<li><strong>Kubernetes</strong> support: How to use Kubernetes with Podman.</li>
<li><strong>Security</strong>: Use <code>rootless</code> mode or containers without root privileges.</li>
</ul>
<p><img loading="lazy" alt="5-things-to-know-for-a-docker-user-hero" src="https://podman-desktop.io/assets/images/5-things-to-know-for-a-docker-user-hero-376f962671072e8cd6909702d92c90b1.png" width="800" height="462" class="img_SS3x"></p>
<hr>
<h2 class="anchor anchorWithStickyNavbar_JmGV" id="use-podman-desktop-to-interact-with-containers-running-in-docker">Use Podman Desktop to interact with containers running in Docker<a href="https://podman-desktop.io/blog/5-things-to-know-for-a-docker-user#use-podman-desktop-to-interact-with-containers-running-in-docker" class="hash-link" aria-label="Direct link to Use Podman Desktop to interact with containers running in Docker" title="Direct link to Use Podman Desktop to interact with containers running in Docker"></a></h2>
<p>Docker Desktop provides a UI to interact with containers and images. But the UI depends on Docker API and it is not possible to use the UI with Docker and Podman at the same time.</p>
<p>Podman Desktop is a multi-engine UI tool. The UI is compatible with the API of Docker and Podman. It means all containers and images from all the engines at the same time are visible in the UI.</p>
<p>When migrating from Docker to Podman, you can use Podman Desktop to interact with containers running in Docker. Explore all commands and features of Podman Desktop and see all the resources from Docker.</p>
<p><img loading="lazy" alt="Many container engines at the same time" src="https://podman-desktop.io/assets/images/multiple-container-engines-aeb03d9e5dab3b2d502066aaa300be41.png" width="1253" height="712" class="img_SS3x"></p>
<h2 class="anchor anchorWithStickyNavbar_JmGV" id="docker-compatibility-mode">Docker compatibility mode<a href="https://podman-desktop.io/blog/5-things-to-know-for-a-docker-user#docker-compatibility-mode" class="hash-link" aria-label="Direct link to Docker compatibility mode" title="Direct link to Docker compatibility mode"></a></h2>
<p>Using Podman with Podman Desktop or with the Podman CLI is straightforward. But some tools expect to find <code>docker</code> CLI or <code>docker.sock</code> socket. In this case, you have to use the compatibility mode of Podman.</p>
<h3 class="anchor anchorWithStickyNavbar_JmGV" id="socket-file-compatibility">Socket file compatibility<a href="https://podman-desktop.io/blog/5-things-to-know-for-a-docker-user#socket-file-compatibility" class="hash-link" aria-label="Direct link to Socket file compatibility" title="Direct link to Socket file compatibility"></a></h3>
<p>The socket compatibility mode is a feature of Podman that allows to bind the Podman socket under the Docker socket path.</p>
<p>On Windows the socket compatibility mode is always enabled by default. On macOS, by using the <code>.pkg installer</code> it is active by default. But when installing with <code>brew</code>, it will not be there because it requires some admin permissions.</p>
<p>That is not an issue because you can enable it by <a href="https://podman-desktop.io/docs/migrating-from-docker/using-podman-mac-helper" target="_blank" rel="noopener noreferrer">invoking a CLI tool</a> that will setup the compatibility mode.</p>
<p>For example if you use <a href="https://www.testcontainers.org/" target="_blank" rel="noopener noreferrer"><code>TestContainers</code></a> in your Java project, you can use the compatibility mode to ensure that the tool will use Podman instead of Docker.</p>
<h3 class="anchor anchorWithStickyNavbar_JmGV" id="cli-compatibility">CLI compatibility<a href="https://podman-desktop.io/blog/5-things-to-know-for-a-docker-user#cli-compatibility" class="hash-link" aria-label="Direct link to CLI compatibility" title="Direct link to CLI compatibility"></a></h3>
<p>If you have scripts relying on <code>docker</code> CLI, you can use the compatibility mode to ensure that the tool is working with Podman instead of Docker.</p>
<p>If you have the <code>docker</code> CLI installed on your computer, you can use the socket file compatibility of docker to ensure that the tool is working with Podman engine instead of Docker.</p>
<p>If you do not have the <code>docker</code> CLI installed on your computer, you can <a href="https://podman-desktop.io/docs/migrating-from-docker/emulating-docker-cli-with-podman" target="_blank" rel="noopener noreferrer">Create a script</a> called <code>docker</code> that will call the <code>podman</code> CLI</p>
<p><strong><em>NOTE:</em></strong> creating a shell prompt alias, for example <code>alias docker=podman</code>, will not work inside scripts that you call.</p>
<h2 class="anchor anchorWithStickyNavbar_JmGV" id="compose">Compose<a href="https://podman-desktop.io/blog/5-things-to-know-for-a-docker-user#compose" class="hash-link" aria-label="Direct link to Compose" title="Direct link to Compose"></a></h2>
<p>As a user of Docker, you might use <code>docker compose</code> (or <code>docker-compose</code>) to run some of your applications.</p>
<p>For now Podman does not include a <code>Compose</code> support directly in the CLI with a command <code>podman compose</code>.</p>
<p><code>Compose</code> can work with the Podman socket.</p>
<p>Based on the compatibility mode (see <a href="https://podman-desktop.io/blog/5-things-to-know-for-a-docker-user#docker-compatibility-mode">section about Docker compatibility mode</a>):</p>
<ul>
<li>Enabled: you can use the <code>compose</code> binary to run your applications.</li>
<li>Disabled: you need to <a href="https://podman-desktop.io/docs/migrating-from-docker/using-the-docker_host-environment-variable" target="_blank" rel="noopener noreferrer">export the environment variable DOCKER_HOST</a> before running compose.</li>
</ul>
<p>You can now use the <code>compose</code> binary to run your applications and it will use Podman engine.</p>
<p>Podman Desktop has a <code>compose</code> extension that can fetch <code>compose</code> binary if not already available on the filesystem.</p>
<p>Podman Desktop UI displays the containers created by <code>Compose</code> are in the same group.</p>
<p><img loading="lazy" alt="Compose support in the UI" src="https://podman-desktop.io/assets/images/compose-containers-in-ui-0528fa58b39f08da7008c01b27744042.png" width="1253" height="712" class="img_SS3x"></p>
<h2 class="anchor anchorWithStickyNavbar_JmGV" id="kubernetes">Kubernetes<a href="https://podman-desktop.io/blog/5-things-to-know-for-a-docker-user#kubernetes" class="hash-link" aria-label="Direct link to Kubernetes" title="Direct link to Kubernetes"></a></h2>
<p>It is possible to start a Kubernetes cluster with Docker.</p>
<p>Podman supports directly a subset of Kubernetes resources that you can use with <code>.yaml</code> files.</p>
<p>For example if you only want to create a <code>Pod</code> resource, you can use the <code>Play Kubernetes YAML</code> button from the <code>Containers</code> list screen with your <code>.yaml</code> file. No need to install or start a Kubernetes cluster.</p>
<p><img loading="lazy" alt="Play Kubernetes YAML" src="https://podman-desktop.io/assets/images/play-kubernetes-yaml-ce2ce5fd9101d6731dfe4eac4414910a.png" width="1253" height="712" class="img_SS3x"></p>
<p>It is possible to do the counter-part. Export the definition of a container or pod to a Kubernetes resource. You can use the <code>Generate kube</code> button from the kebab menu of a given container or pod.</p>
<p><img loading="lazy" alt="Kubernetes generate" src="https://podman-desktop.io/assets/images/kube-generate-3e6c658947cad795467c8fdc5db13c10.png" width="1253" height="712" class="img_SS3x"></p>
<p>Podman handles pods and in the Podman Desktop UI, you can see all the pods inside a Pod section. All containers inside the pod are in the same group.</p>
<p><img loading="lazy" alt="Pods in the UI" src="https://podman-desktop.io/assets/images/pods-in-ui-ecd61f20dce88252ee58cd26303e469b.png" width="1253" height="712" class="img_SS3x"></p>
<p><img loading="lazy" alt="Containers from pod" src="https://podman-desktop.io/assets/images/containers-from-pod-a149547e10f972aeb503bc0bbcb53f07.png" width="1253" height="712" class="img_SS3x"></p>
<p>An experimental <code>kind</code> extension is bringing the creation of full-blown Kubernetes cluster with Podman.</p>
<h2 class="anchor anchorWithStickyNavbar_JmGV" id="rootless-mode">Rootless mode<a href="https://podman-desktop.io/blog/5-things-to-know-for-a-docker-user#rootless-mode" class="hash-link" aria-label="Direct link to Rootless mode" title="Direct link to Rootless mode"></a></h2>
<p>One of the difference of Docker and Podman is the way they handle containers. Docker requires root privileges to run containers by default. Podman can run containers without root privileges by default.</p>
<p>It means that for example, starting a container with a port &lt; 1024 will not work. You need to use a port &gt; 1024.</p>
<p>If you still need to create containers with a port &lt; 1024, you can change the Podman machine configuration of the Podman Machine if you are on Windows or macOS.</p>
<p>The command is <code>podman machine set --rootful</code> to enable the execution with root privileges or <code>podman machine set --rootful=false</code> to switch back to rootless mode.</p>]]></content:encoded>
<category>podman-desktop</category>
<category>docker</category>
<category>migrating</category>
</item>
<item>
<title><![CDATA[Release Notes - Podman Desktop 0.12]]></title>
<link>https://podman-desktop.io/blog/podman-desktop-release-0.12</link>
<guid>https://podman-desktop.io/blog/podman-desktop-release-0.12</guid>
<pubDate>Wed, 15 Feb 2023 00:00:00 GMT</pubDate>
<description><![CDATA[Podman Desktop 0.12 has been released!]]></description>
<content:encoded><![CDATA[<p>This release note covers Podman Desktop 0.12 release changes.</p>
<ul>
<li><strong>Podman Version</strong>: Podman 4.4.1 now included in Windows and Mac installers.</li>
<li><strong>Containers Configuration</strong>: Configure port mappings for an image without exported ports.</li>
<li><strong>Windows Home Support</strong>: Podman Desktop now supports Windows Home Edition.</li>
<li><strong>Start minimized</strong>: Option to start Podman Desktop minimized to system tray.</li>
<li><strong>UX and UI Improvements</strong>: Consistent actions, placeholder for logs, unified icons and others.</li>
</ul>
<p>Podman Desktop 0.12 is now available. <a href="https://podman-desktop.io/downloads">Click here to download it</a>!</p>
<p><img loading="lazy" alt="podman-desktop-0-12-hero" src="https://podman-desktop.io/assets/images/podman-desktop-release-0.12-d5d46c8986e6e893b9ad30aac05c09f7.png" width="1015" height="580" class="img_SS3x"></p>
<hr>
<h2 class="anchor anchorWithStickyNavbar_JmGV" id="release-details">Release Details<a href="https://podman-desktop.io/blog/podman-desktop-release-0.12#release-details" class="hash-link" aria-label="Direct link to Release Details" title="Direct link to Release Details"></a></h2>
<h3 class="anchor anchorWithStickyNavbar_JmGV" id="update-to-podman-v441-1456">Update to Podman v4.4.1 <a href="https://github.com/containers/podman-desktop/pull/1456" target="_blank" rel="noopener noreferrer">#1456</a><a href="https://podman-desktop.io/blog/podman-desktop-release-0.12#update-to-podman-v441-1456" class="hash-link" aria-label="Direct link to update-to-podman-v441-1456" title="Direct link to update-to-podman-v441-1456"></a></h3>
<p>Podman Desktop 0.12 embeds <a href="https://github.com/containers/podman/releases/tag/v4.4.1" target="_blank" rel="noopener noreferrer">Podman 4.4.1</a> in Windows and macOS installers. Make sure to upgrade to benefit from the latest Podman features and bug fixes.</p>
<h3 class="anchor anchorWithStickyNavbar_JmGV" id="configuring-port-mappings-when-an-image-has-no-exported-port-1265">Configuring port mappings when an image has no exported port <a href="https://github.com/containers/podman-desktop/pull/1265" target="_blank" rel="noopener noreferrer">#1265</a><a href="https://podman-desktop.io/blog/podman-desktop-release-0.12#configuring-port-mappings-when-an-image-has-no-exported-port-1265" class="hash-link" aria-label="Direct link to configuring-port-mappings-when-an-image-has-no-exported-port-1265" title="Direct link to configuring-port-mappings-when-an-image-has-no-exported-port-1265"></a></h3>
<p>With the latest update, users can now add multiple local-to-remote port mappings when starting a container from an image that has no exported ports. This feature provides users with the flexibility to specify which ports on their local machine should map to which ports on the container, even if the container does not have any exported ports by default.</p>
<p><img loading="lazy" src="https://user-images.githubusercontent.com/49404737/215112797-86dcf3f0-121a-487e-a71f-ad41e91f93da.gif" alt="port-mapping" class="img_SS3x"></p>
<h3 class="anchor anchorWithStickyNavbar_JmGV" id="installing-podman-desktop-on-windows-home-edition-1268">Installing Podman Desktop on Windows Home Edition <a href="https://github.com/containers/podman-desktop/pull/1268" target="_blank" rel="noopener noreferrer">#1268</a><a href="https://podman-desktop.io/blog/podman-desktop-release-0.12#installing-podman-desktop-on-windows-home-edition-1268" class="hash-link" aria-label="Direct link to installing-podman-desktop-on-windows-home-edition-1268" title="Direct link to installing-podman-desktop-on-windows-home-edition-1268"></a></h3>
<p>Podman Desktop 0.12 offers the ability to be installed on Windows Home Edition. The mechanism uses Virtual Machine Platform detection, instead of hyper-v. WSL2 is still requires but can be installed along with the installation process.</p>
<p><img loading="lazy" src="https://user-images.githubusercontent.com/436777/215121429-7c757aaa-a838-43db-98a2-78ad368f407e.png" alt="install-windows-home-edition-2" class="img_SS3x"></p>
<h3 class="anchor anchorWithStickyNavbar_JmGV" id="option-to-automatically-minimize-podman-desktop-on-login-1374">Option to automatically minimize Podman Desktop on login <a href="https://github.com/containers/podman-desktop/pull/1374" target="_blank" rel="noopener noreferrer">#1374</a><a href="https://podman-desktop.io/blog/podman-desktop-release-0.12#option-to-automatically-minimize-podman-desktop-on-login-1374" class="hash-link" aria-label="Direct link to option-to-automatically-minimize-podman-desktop-on-login-1374" title="Direct link to option-to-automatically-minimize-podman-desktop-on-login-1374"></a></h3>
<p>Podman Desktop now provides a "start minimized" option when users log in onto the laptop. This option, available from the application's settings, can be useful if users want to automatically launch Podman Desktop at log in, but prefer not to have the window visible on the screen. With this feature, you can ensure that Podman Desktop is up and running in the background without any interruption to your workflows.</p>
<ul>
<li>Go to <strong><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="gear" class="svg-inline--fa fa-gear fa-lg" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path fill="currentColor" d="M495.9 166.6c3.2 8.7 .5 18.4-6.4 24.6l-43.3 39.4c1.1 8.3 1.7 16.8 1.7 25.4s-.6 17.1-1.7 25.4l43.3 39.4c6.9 6.2 9.6 15.9 6.4 24.6c-4.4 11.9-9.7 23.3-15.8 34.3l-4.7 8.1c-6.6 11-14 21.4-22.1 31.2c-5.9 7.2-15.7 9.6-24.5 6.8l-55.7-17.7c-13.4 10.3-28.2 18.9-44 25.4l-12.5 57.1c-2 9.1-9 16.3-18.2 17.8c-13.8 2.3-28 3.5-42.5 3.5s-28.7-1.2-42.5-3.5c-9.2-1.5-16.2-8.7-18.2-17.8l-12.5-57.1c-15.8-6.5-30.6-15.1-44-25.4L83.1 425.9c-8.8 2.8-18.6 .3-24.5-6.8c-8.1-9.8-15.5-20.2-22.1-31.2l-4.7-8.1c-6.1-11-11.4-22.4-15.8-34.3c-3.2-8.7-.5-18.4 6.4-24.6l43.3-39.4C64.6 273.1 64 264.6 64 256s.6-17.1 1.7-25.4L22.4 191.2c-6.9-6.2-9.6-15.9-6.4-24.6c4.4-11.9 9.7-23.3 15.8-34.3l4.7-8.1c6.6-11 14-21.4 22.1-31.2c5.9-7.2 15.7-9.6 24.5-6.8l55.7 17.7c13.4-10.3 28.2-18.9 44-25.4l12.5-57.1c2-9.1 9-16.3 18.2-17.8C227.3 1.2 241.5 0 256 0s28.7 1.2 42.5 3.5c9.2 1.5 16.2 8.7 18.2 17.8l12.5 57.1c15.8 6.5 30.6 15.1 44 25.4l55.7-17.7c8.8-2.8 18.6-.3 24.5 6.8c8.1 9.8 15.5 20.2 22.1 31.2l4.7 8.1c6.1 11 11.4 22.4 15.8 34.3zM256 336a80 80 0 1 0 0-160 80 80 0 1 0 0 160z"></path></svg> Settings &gt; Preferences &gt; Login: Minimize</strong> to activate the option.</li>
</ul>
<p><img loading="lazy" src="https://user-images.githubusercontent.com/6422176/216651424-bcf756fd-7554-4b24-a838-e3e2f798fe6e.png" alt="minimize-on-login" class="img_SS3x"></p>
<h3 class="anchor anchorWithStickyNavbar_JmGV" id="ui-and-ux-improvements">UI and UX Improvements<a href="https://podman-desktop.io/blog/podman-desktop-release-0.12#ui-and-ux-improvements" class="hash-link" aria-label="Direct link to UI and UX Improvements" title="Direct link to UI and UX Improvements"></a></h3>
<h4 class="anchor anchorWithStickyNavbar_JmGV" id="improved-actions-consistency-1225">Improved actions consistency <a href="https://github.com/containers/podman-desktop/pull/1225" target="_blank" rel="noopener noreferrer">#1225</a><a href="https://podman-desktop.io/blog/podman-desktop-release-0.12#improved-actions-consistency-1225" class="hash-link" aria-label="Direct link to improved-actions-consistency-1225" title="Direct link to improved-actions-consistency-1225"></a></h4>
<p>Actions displayed in the list pages for Images and Containers have been reviewed and made consistent between other pages.</p>
<p><img loading="lazy" src="https://user-images.githubusercontent.com/19958075/214104678-2d4148d7-484e-41f9-9da9-aecee328ae2b.png" alt="action-consistency-1" class="img_SS3x"></p>
<p>Actions displayed in the header of the container's details page have been improved so that the actions are always displayed in the same order.</p>
<p><img loading="lazy" src="https://user-images.githubusercontent.com/19958075/214104663-64fa0601-bb79-49bf-8226-6a78a88d3622.png" alt="action-consistency-2" class="img_SS3x"></p>
<h4 class="anchor anchorWithStickyNavbar_JmGV" id="consistent-status-icons-for-pods-containers-images-and-volumes-1326-1377-1459-and-1245">Consistent status icons for Pods, Containers, Images and Volumes <a href="https://github.com/containers/podman-desktop/pull/1326" target="_blank" rel="noopener noreferrer">#1326</a>, <a href="https://github.com/containers/podman-desktop/pull/1377" target="_blank" rel="noopener noreferrer">#1377</a>, <a href="https://github.com/containers/podman-desktop/pull/1459" target="_blank" rel="noopener noreferrer">#1459</a> and <a href="https://github.com/containers/podman-desktop/pull/1245" target="_blank" rel="noopener noreferrer">#1245</a><a href="https://podman-desktop.io/blog/podman-desktop-release-0.12#consistent-status-icons-for-pods-containers-images-and-volumes-1326-1377-1459-and-1245" class="hash-link" aria-label="Direct link to consistent-status-icons-for-pods-containers-images-and-volumes-1326-1377-1459-and-1245" title="Direct link to consistent-status-icons-for-pods-containers-images-and-volumes-1326-1377-1459-and-1245"></a></h4>
<p>The status icons for Pods, Containers, Images, and Volumes have been unified and use consistent states.</p>
<p><img loading="lazy" src="https://user-images.githubusercontent.com/19958075/216671859-bdd8dca4-56b7-40a8-961a-dcb6e01be61e.png" alt="pods-status-icon" class="img_SS3x"></p>
<p>Icons in empty screens have been updated to use the same consistent SVG icon as the status icons.</p>
<p><img loading="lazy" src="https://user-images.githubusercontent.com/436777/214577726-f4cfde7b-017a-499d-a2a9-e50d455ffaf0.png" alt="empty-screen-2" class="img_SS3x"></p>
<h4 class="anchor anchorWithStickyNavbar_JmGV" id="placeholder-when-logs-for-containers-are-being-fetched-1353">Placeholder when logs for containers are being fetched <a href="https://github.com/containers/podman-desktop/pull/1353" target="_blank" rel="noopener noreferrer">#1353</a><a href="https://podman-desktop.io/blog/podman-desktop-release-0.12#placeholder-when-logs-for-containers-are-being-fetched-1353" class="hash-link" aria-label="Direct link to placeholder-when-logs-for-containers-are-being-fetched-1353" title="Direct link to placeholder-when-logs-for-containers-are-being-fetched-1353"></a></h4>
<p>A placeholder is now displayed when logs are being fetched.
<img loading="lazy" src="https://user-images.githubusercontent.com/49404737/216952505-899308ae-183e-487a-b6e5-28832a0b6452.gif" alt="placeholder-loading-logs" class="img_SS3x"></p>
<h4 class="anchor anchorWithStickyNavbar_JmGV" id="fixed-alignment-in-badges-from-the-navigation-sidebar-1357">Fixed alignment in badges from the navigation sidebar <a href="https://github.com/containers/podman-desktop/pull/1357" target="_blank" rel="noopener noreferrer">#1357</a><a href="https://podman-desktop.io/blog/podman-desktop-release-0.12#fixed-alignment-in-badges-from-the-navigation-sidebar-1357" class="hash-link" aria-label="Direct link to fixed-alignment-in-badges-from-the-navigation-sidebar-1357" title="Direct link to fixed-alignment-in-badges-from-the-navigation-sidebar-1357"></a></h4>
<p>Badges in the sidebar are now aligned with the title of the section.</p>
<p><img loading="lazy" src="https://user-images.githubusercontent.com/49404737/216336502-2a34dea3-fd41-4184-8cfe-9226d70da070.png" alt="alignement-badges" class="img_SS3x"></p>
<h4 class="anchor anchorWithStickyNavbar_JmGV" id="enabledisable-open-browser-action-based-on-container-state-1395-and-1397">Enable/disable open browser action based on container state <a href="https://github.com/containers/podman-desktop/pull/1395" target="_blank" rel="noopener noreferrer">#1395</a> and <a href="https://github.com/containers/podman-desktop/pull/1397" target="_blank" rel="noopener noreferrer">#1397</a><a href="https://podman-desktop.io/blog/podman-desktop-release-0.12#enabledisable-open-browser-action-based-on-container-state-1395-and-1397" class="hash-link" aria-label="Direct link to enabledisable-open-browser-action-based-on-container-state-1395-and-1397" title="Direct link to enabledisable-open-browser-action-based-on-container-state-1395-and-1397"></a></h4>
<p>The action to open the browser if a port is opened in a container, is now disabled when the container is stopped. It is also hidden in the kebab menu.</p>
<p><img loading="lazy" src="https://user-images.githubusercontent.com/49404737/217284414-1bdc820b-30a8-485e-b0f9-485229026696.gif" alt="enable-disable-container-actions" class="img_SS3x"></p>
<hr>
<h2 class="anchor anchorWithStickyNavbar_JmGV" id="other-notable-enhancements">Other Notable Enhancements<a href="https://podman-desktop.io/blog/podman-desktop-release-0.12#other-notable-enhancements" class="hash-link" aria-label="Direct link to Other Notable Enhancements" title="Direct link to Other Notable Enhancements"></a></h2>
<ul>
<li>Display extension icons <a href="https://github.com/containers/podman-desktop/pull/1058" target="_blank" rel="noopener noreferrer">#1058</a></li>
<li>Solid Icons <a href="https://github.com/containers/podman-desktop/pull/1276" target="_blank" rel="noopener noreferrer">#1267</a></li>
<li>Differentiate icons compared to status icons <a href="https://github.com/containers/podman-desktop/pull/1298" target="_blank" rel="noopener noreferrer">#1268</a></li>
<li>Refactors window initializing <a href="https://github.com/containers/podman-desktop/pull/1309" target="_blank" rel="noopener noreferrer">#1309</a></li>
<li>Change window creation background color to dark <a href="https://github.com/containers/podman-desktop/pull/1310" target="_blank" rel="noopener noreferrer">#1310</a></li>
<li>Use Podman <code>machine inspect</code> to read the address to connect to the Podman machine <a href="https://github.com/containers/podman-desktop/pull/1364" target="_blank" rel="noopener noreferrer">#1364</a></li>
<li>Update the editor content when the pod name changes, and disable the deploy button when empty <a href="https://github.com/containers/podman-desktop/pull/1403" target="_blank" rel="noopener noreferrer">#1403</a></li>
<li>Ability to manually set color of tray icon for Windows and Linux <a href="https://github.com/containers/podman-desktop/pull/1243" target="_blank" rel="noopener noreferrer">#1243</a></li>
<li>Better UI feedback when starting pods <a href="https://github.com/containers/podman-desktop/pull/1242" target="_blank" rel="noopener noreferrer">#1242</a></li>
</ul>
<hr>
<h2 class="anchor anchorWithStickyNavbar_JmGV" id="documentation">Documentation<a href="https://podman-desktop.io/blog/podman-desktop-release-0.12#documentation" class="hash-link" aria-label="Direct link to Documentation" title="Direct link to Documentation"></a></h2>
<p>The documentation had many editorial reviews, and new content.</p>
<ul>
<li><a href="https://podman-desktop.io/docs/installation/windows-install">Link to simple WSL2 installation instructions</a></li>
<li><a href="https://podman-desktop.io/docs/installation/windows-install">Refresh Windows Installation</a></li>
<li><a href="https://podman-desktop.io/docs/installation">Revamped installation introduction</a></li>
<li><a href="https://podman-desktop.io/docs/installation/linux-install">Reorganized Linux installation</a></li>
<li><a href="https://podman-desktop.io/docs/podman/installing-podman-with-openshift-local-on-windows">Installing Podman with OpenShift Local</a></li>
<li><a href="https://podman-desktop.io/docs/installation/windows-install/installing-podman-desktop-and-podman-in-a-restricted-environment">Installing Podman Desktop on Windows in a restricted environment</a></li>
<li><a href="https://podman-desktop.io/docs/migrating-from-docker/using-podman-mac-helper">Fixed documentation on <code>podman-mac-helper</code> setup</a></li>
</ul>
<hr>
<h2 class="anchor anchorWithStickyNavbar_JmGV" id="notable-bug-fixes">Notable bug fixes<a href="https://podman-desktop.io/blog/podman-desktop-release-0.12#notable-bug-fixes" class="hash-link" aria-label="Direct link to Notable bug fixes" title="Direct link to Notable bug fixes"></a></h2>
<ul>
<li>Fixed handling path with spaces on Windows when installing Podman <a href="https://github.com/containers/podman-desktop/pull/1270" target="_blank" rel="noopener noreferrer">#1270</a></li>
<li>Removed padding from SVG icons <a href="https://github.com/containers/podman-desktop/pull/1253" target="_blank" rel="noopener noreferrer">#1253</a></li>
<li>Website: fixed download links for Windows and macOS binaries <a href="https://github.com/containers/podman-desktop/pull/1255" target="_blank" rel="noopener noreferrer">#1255</a></li>
<li>Fixed prettier commands on Windows <a href="https://github.com/containers/podman-desktop/pull/1267" target="_blank" rel="noopener noreferrer">#1266</a></li>
<li>Fixed new xterm instance spawn when clicking the logs route <a href="https://github.com/containers/podman-desktop/pull/1344" target="_blank" rel="noopener noreferrer">#1344</a></li>
<li>Fixed need to wait that telemetry has been initialized before proceeding <a href="https://github.com/containers/podman-desktop/pull/1373" target="_blank" rel="noopener noreferrer">#1373</a></li>
<li>Fixed new xterm instance spawn when clicking the logs route in pod details<a href="https://github.com/containers/podman-desktop/pull/1393" target="_blank" rel="noopener noreferrer">#1393</a></li>
<li>Fixed stop spinner if image cannot be retrieved <a href="https://github.com/containers/podman-desktop/pull/1394" target="_blank" rel="noopener noreferrer">#1394</a></li>
<li>Fixed escape command with quotes only for Windows <a href="https://github.com/containers/podman-desktop/pull/1462" target="_blank" rel="noopener noreferrer">#1462</a></li>
<li>Fixed random CRC status change <a href="https://github.com/containers/podman-desktop/pull/1420" target="_blank" rel="noopener noreferrer">#1420</a></li>
</ul>
<hr>
<h2 class="anchor anchorWithStickyNavbar_JmGV" id="community-thank-you">Community Thank You<a href="https://podman-desktop.io/blog/podman-desktop-release-0.12#community-thank-you" class="hash-link" aria-label="Direct link to Community Thank You" title="Direct link to Community Thank You"></a></h2>
<p>🎉 Wed like to say a big thank you to everyone who helped to make Podman Desktop 0.12 even better:</p>
<ul>
<li><a href="https://github.com/imphil" target="_blank" rel="noopener noreferrer">Philipp Wagner</a> in <a href="https://github.com/containers/podman-desktop/pull/1274" target="_blank" rel="noopener noreferrer">#1274 - Link to simple WSL2 installation instructions</a></li>
<li><a href="https://github.com/arixmkii" target="_blank" rel="noopener noreferrer">Arthur S</a> in <a href="https://github.com/containers/podman-desktop/pull/1364" target="_blank" rel="noopener noreferrer">#1364 - Get podman machine socketPath from podman machine inspect first</a></li>
<li><a href="https://github.com/Mitch9378" target="_blank" rel="noopener noreferrer">Mitch West</a> in <a href="https://github.com/containers/podman-desktop/pull/1428" target="_blank" rel="noopener noreferrer">#1428 - Fix old documentation for 'podman-mac-helper setup'</a></li>
</ul>
<h2 class="anchor anchorWithStickyNavbar_JmGV" id="final-notes">Final Notes<a href="https://podman-desktop.io/blog/podman-desktop-release-0.12#final-notes" class="hash-link" aria-label="Direct link to Final Notes" title="Direct link to Final Notes"></a></h2>
<p>The complete list of issues fixed in this release is available <a href="https://github.com/containers/podman-desktop/issues?q=is%3Aclosed+milestone%3A0.12.0" target="_blank" rel="noopener noreferrer">here</a>.</p>
<p>Get the latest release from the <a href="https://podman-desktop.io/downloads">Downloads</a> section of the website and boost your development journey with Podman Desktop. Additionally, visit the <a href="https://github.com/containers/podman-desktop" target="_blank" rel="noopener noreferrer">GitHub repository</a> and see how you can help us make Podman Desktop better.</p>]]></content:encoded>
<category>podman-desktop</category>
<category>release</category>
<category>kubernetes</category>
</item>
<item>
<title><![CDATA[Release Notes - Podman Desktop 0.11]]></title>
<link>https://podman-desktop.io/blog/podman-desktop-release-0.11</link>
<guid>https://podman-desktop.io/blog/podman-desktop-release-0.11</guid>
<pubDate>Wed, 18 Jan 2023 00:00:00 GMT</pubDate>
<description><![CDATA[Podman Desktop 0.11 has been released!]]></description>
<content:encoded><![CDATA[<p>This release note covers Podman Desktop 0.11 release changes.</p>
<ul>
<li><strong>Air-Gapped Installation</strong>: New all-in-one binaries for air-gapped installation.</li>
<li><strong>Feedback</strong>: Submit feedback directly from Podman Desktop.</li>
<li><strong>Docker Compatibility Mode</strong>: Information about the Docker compatibility mode.</li>
<li><strong>Proxy Setting</strong>: Toggle on/off the proxy setting.</li>
<li><strong>Deploy to Kubernetes</strong>: Select the namespace to deploy to Kubernetes.</li>
<li><strong>Registry Configuration</strong>: Simplified registry configuration for well known registries.</li>
<li><strong>UX/UI Improvements</strong>: View pod's container logs, better visual feedback, configurable editor font size, and more.</li>
</ul>
<p>Podman Desktop 0.11 is now available. <a href="https://podman-desktop.io/downloads">Click here to download it</a>!</p>
<hr>
<h2 class="anchor anchorWithStickyNavbar_JmGV" id="release-details">Release Details<a href="https://podman-desktop.io/blog/podman-desktop-release-0.11#release-details" class="hash-link" aria-label="Direct link to Release Details" title="Direct link to Release Details"></a></h2>
<h3 class="anchor anchorWithStickyNavbar_JmGV" id="air-gapped-installation-1104-1120">Air-Gapped installation <a href="https://github.com/containers/podman-desktop/pull/1104" target="_blank" rel="noopener noreferrer">#1104</a> <a href="https://github.com/containers/podman-desktop/pull/1120" target="_blank" rel="noopener noreferrer">#1120</a><a href="https://podman-desktop.io/blog/podman-desktop-release-0.11#air-gapped-installation-1104-1120" class="hash-link" aria-label="Direct link to air-gapped-installation-1104-1120" title="Direct link to air-gapped-installation-1104-1120"></a></h3>
<p>For users who are not able to connect to the internet, a new all-in-one (airgap) binary that includes the Podman Desktop application and the Podman binaries is now available for both Mac and Windows. When initializing a new Podman machine using all-in-one binaries, it'll use the embedded files and not grab them from internet:</p>
<ul>
<li>on Mac, it embeds the qemu FCOS binaries.</li>
<li>on Windows, it embeds the WSL binary.</li>
</ul>
<p>To differentiate the air-gapped binaries from the regular ones, you can check the artifactname, they're containing 'airgap' and are bigger.
Please note, that those binaries are available only on releases and not the pre-releases.</p>
<p>There is also an optional way to provide a custom Podman machine image in the create machine form. By providing the path to the image you want, Podman Desktop will create a machine with that image. Leaving the field empty will use the default image (the one included in the binary).</p>
<div style="width:100%;height:100%"></div>
<h3 class="anchor anchorWithStickyNavbar_JmGV" id="feedback-within-podman-desktop-1078">Feedback within Podman Desktop <a href="https://github.com/containers/podman-desktop/pull/1078" target="_blank" rel="noopener noreferrer">#1078</a><a href="https://podman-desktop.io/blog/podman-desktop-release-0.11#feedback-within-podman-desktop-1078" class="hash-link" aria-label="Direct link to feedback-within-podman-desktop-1078" title="Direct link to feedback-within-podman-desktop-1078"></a></h3>
<p>Submitting feedback on Podman Desktop is getting easier as it is possible directly within the tool. This will help to get more information about the issues you are facing and will help us to improve the tool.</p>
<div style="width:100%;height:100%"></div>
<p>Please feel free to submit any feedback you have, we are looking forward to hearing from you!</p>
<h3 class="anchor anchorWithStickyNavbar_JmGV" id="docker-compatibility-mode-1047">Docker compatibility mode <a href="https://github.com/containers/podman-desktop/pull/1047" target="_blank" rel="noopener noreferrer">#1047</a><a href="https://podman-desktop.io/blog/podman-desktop-release-0.11#docker-compatibility-mode-1047" class="hash-link" aria-label="Direct link to docker-compatibility-mode-1047" title="Direct link to docker-compatibility-mode-1047"></a></h3>
<p>The Docker compatibility mode is a feature that allows to use Podman as a drop-in replacement for Docker. It relies on the Docker socket helper provided with Podman and automatically handle the local setup of Podman path to the Docker socket. Tools like <a href="https://www.testcontainers.org/" target="_blank" rel="noopener noreferrer">Testcontainers</a> or others are relying on this to communicate to the container engine.</p>
<p>In this new version of Podman Desktop, we are now providing information to the user about the status of this compatibility mode directly on the dashboard page. The way it works is the following:</p>
<ul>
<li>When Docker is running: the socket is pointing to Docker.</li>
<li>When Podman is starting and Docker is not running: the docker API socket will use Podman.</li>
</ul>
<p>In case the compatibility mode is not activated, new documentation on how to activate it and how to easily switch between Docker and Podman is available here: <a href="https://podman-desktop.io/docs/migrating-from-docker" target="_blank" rel="noopener noreferrer">https://podman-desktop.io/docs/migrating-from-docker</a>.</p>
<p>This is a warning displayed for Windows users:
<img loading="lazy" src="https://user-images.githubusercontent.com/436777/209305744-9056addd-f122-4f75-9e03-ad27a0109375.png" alt="windows-docker-compatibility" class="img_SS3x"></p>
<p>This is the warning for Mac users:
<img loading="lazy" src="https://user-images.githubusercontent.com/6422176/207964861-a9c1f72c-89d6-4816-beab-397af4125620.png" alt="mac-docker-compatibility" class="img_SS3x"></p>
<h3 class="anchor anchorWithStickyNavbar_JmGV" id="allow-to-toggle-onoff-the-proxy-setting-983">Allow to toggle on/off the proxy setting <a href="https://github.com/containers/podman-desktop/pull/983" target="_blank" rel="noopener noreferrer">#983</a><a href="https://podman-desktop.io/blog/podman-desktop-release-0.11#allow-to-toggle-onoff-the-proxy-setting-983" class="hash-link" aria-label="Direct link to allow-to-toggle-onoff-the-proxy-setting-983" title="Direct link to allow-to-toggle-onoff-the-proxy-setting-983"></a></h3>
<p>In some context, users need the ability to disable and re-enable the proxy configuration very quickly, without having to entirely reconfigure it. This is now possible from the Podman Desktop settings page, where a toggle to enable/disable the proxy configuration has been added.</p>
<div style="width:100%;height:100%"></div>
<p>Note: extensions can read this information and then update the proxy configuration.</p>
<h3 class="anchor anchorWithStickyNavbar_JmGV" id="namespace-selection-for-deploy-to-kubernetes-1008">Namespace selection for deploy to Kubernetes <a href="https://github.com/containers/podman-desktop/pull/1008" target="_blank" rel="noopener noreferrer">#1008</a><a href="https://podman-desktop.io/blog/podman-desktop-release-0.11#namespace-selection-for-deploy-to-kubernetes-1008" class="hash-link" aria-label="Direct link to namespace-selection-for-deploy-to-kubernetes-1008" title="Direct link to namespace-selection-for-deploy-to-kubernetes-1008"></a></h3>
<p>A new dropdown menu has been added to the deploy to Kubernetes screen to allow selecting the namespace to deploy to. Defaults to defaultnamespace, if unable to get any from kube_client module.</p>
<p>If the user have set <code>kubectl config set-context --current --namespace=NAMESPACE</code> it honors that as the chosen value.</p>
<p><img loading="lazy" src="https://user-images.githubusercontent.com/7339809/206688886-095e4f15-42ae-4a0a-b1c6-ae4b547fcdfb.gif" alt="deploy-kubernetes-namespace" class="img_SS3x"></p>
<h3 class="anchor anchorWithStickyNavbar_JmGV" id="configure-podman-binary-path-941">Configure Podman binary path <a href="https://github.com/containers/podman-desktop/pull/941" target="_blank" rel="noopener noreferrer">#941</a><a href="https://podman-desktop.io/blog/podman-desktop-release-0.11#configure-podman-binary-path-941" class="hash-link" aria-label="Direct link to configure-podman-binary-path-941" title="Direct link to configure-podman-binary-path-941"></a></h3>
<p>Users might use a custom path to the podman binary. An option within settings (Settings -&gt; Preferences) to allow providing an additional path to Podman binary has been added.
This is useful for users who have installed Podman using a package manager and want to use the binary provided by the package manager.
See: <a href="https://podman-desktop.io/docs/troubleshooting/troubleshooting-podman-on-macos#unable-to-set-custom-binary-path-for-podman-on-macos">Unable to set custom binary path for Podman on macOS</a>
<img loading="lazy" src="https://user-images.githubusercontent.com/6422176/204832063-5858065a-2fc3-49de-8d23-3b99b7d10dbf.png" alt="custom-path" class="img_SS3x"></p>
<h3 class="anchor anchorWithStickyNavbar_JmGV" id="provide-pre-defined-registries-1201">Provide pre-defined registries <a href="https://github.com/containers/podman-desktop/pull/1201" target="_blank" rel="noopener noreferrer">#1201</a><a href="https://podman-desktop.io/blog/podman-desktop-release-0.11#provide-pre-defined-registries-1201" class="hash-link" aria-label="Direct link to provide-pre-defined-registries-1201" title="Direct link to provide-pre-defined-registries-1201"></a></h3>
<p>The experience of configuring a registry is getting simplified for the most popular ones. The user will be able to select a registry from a pre-defined list and will only have to provide the username and password. The following registries will be pre-defined:</p>
<ul>
<li>Dockerhub</li>
<li>Red Hat Quay</li>
<li>GitHub</li>
<li>IBM Container Registry</li>
<li>Google Container Registry</li>
</ul>
<div style="width:100%;height:100%"></div>
<h3 class="anchor anchorWithStickyNavbar_JmGV" id="uiux-improvements">UI/UX Improvements<a href="https://podman-desktop.io/blog/podman-desktop-release-0.11#uiux-improvements" class="hash-link" aria-label="Direct link to UI/UX Improvements" title="Direct link to UI/UX Improvements"></a></h3>
<h4 class="anchor anchorWithStickyNavbar_JmGV" id="view-pods-logs-1122">View Pods logs <a href="https://github.com/containers/podman-desktop/pull/1122" target="_blank" rel="noopener noreferrer">#1122</a><a href="https://podman-desktop.io/blog/podman-desktop-release-0.11#view-pods-logs-1122" class="hash-link" aria-label="Direct link to view-pods-logs-1122" title="Direct link to view-pods-logs-1122"></a></h4>
<p>The pods details view provides the ability to view the logs of each containers that might be running in a pod. Moreover, as it can also be hard to scan and identify which container is producing which output, we appended the container name at the beginning of each output and differentiate each container with a different color.</p>
<p><img loading="lazy" src="https://user-images.githubusercontent.com/6422176/211024673-eee9bad8-1b0c-4446-b8d1-97a226282c4d.png" alt="pods-logs" class="img_SS3x"></p>
<h4 class="anchor anchorWithStickyNavbar_JmGV" id="improved-feedback-when-clicking-on-container-list-action-icons-1150-1161">Improved feedback when clicking on container list action icons <a href="https://github.com/containers/podman-desktop/pull/1150" target="_blank" rel="noopener noreferrer">#1150</a> <a href="https://github.com/containers/podman-desktop/pull/1161" target="_blank" rel="noopener noreferrer">#1161</a><a href="https://podman-desktop.io/blog/podman-desktop-release-0.11#improved-feedback-when-clicking-on-container-list-action-icons-1150-1161" class="hash-link" aria-label="Direct link to improved-feedback-when-clicking-on-container-list-action-icons-1150-1161" title="Direct link to improved-feedback-when-clicking-on-container-list-action-icons-1150-1161"></a></h4>
<p>When starting/stopping or deleting a container, a spinner is now displayed. In case of error, a message indicating that the action failed will also be better indicated.</p>
<div style="width:100%;height:100%"></div>
<p>For containers that exit immediately or short-lived containers, the feedback is also improved and include report of error now provide a better feedback to the user <a href="https://github.com/containers/podman-desktop/pull/1161" target="_blank" rel="noopener noreferrer">#1161</a>.</p>
<div style="width:100%;height:100%"></div>
<h4 class="anchor anchorWithStickyNavbar_JmGV" id="allows-to-change-the-default-font-size-for-the-editor-1160">Allows to change the default font size for the editor <a href="https://github.com/containers/podman-desktop/pull/1160" target="_blank" rel="noopener noreferrer">#1160</a><a href="https://podman-desktop.io/blog/podman-desktop-release-0.11#allows-to-change-the-default-font-size-for-the-editor-1160" class="hash-link" aria-label="Direct link to allows-to-change-the-default-font-size-for-the-editor-1160" title="Direct link to allows-to-change-the-default-font-size-for-the-editor-1160"></a></h4>
<p>An editor is used in several screens of Podman Desktop, from the inspect screen to container's outputs and Kubernetes YAML. The default font size is 10 pixels. It's now possible to adjust the font size to the one the one you prefer. This setting is persisted and will be used for all the editors of Podman Desktop and available from the preferences page (Settings -&gt; Preferences).</p>
<div style="width:100%;height:100%"></div>
<h4 class="anchor anchorWithStickyNavbar_JmGV" id="keep-expanded-state-of-pods-when-refreshing-containers-1042">Keep expanded state of pods when refreshing containers <a href="https://github.com/containers/podman-desktop/pull/1042" target="_blank" rel="noopener noreferrer">#1042</a><a href="https://podman-desktop.io/blog/podman-desktop-release-0.11#keep-expanded-state-of-pods-when-refreshing-containers-1042" class="hash-link" aria-label="Direct link to keep-expanded-state-of-pods-when-refreshing-containers-1042" title="Direct link to keep-expanded-state-of-pods-when-refreshing-containers-1042"></a></h4>
<p>When switching from different screens of the application or simply refreshing the list of containers, the expanded state of each item in the list is now persisted and will be properly restored.</p>
<div style="width:100%;height:100%"></div>
<h4 class="anchor anchorWithStickyNavbar_JmGV" id="click-on-the-pod-name-redirects-to-the-pod-details-page-1159">Click on the Pod name redirects to the Pod details page <a href="https://github.com/containers/podman-desktop/pull/1159" target="_blank" rel="noopener noreferrer">#1159</a><a href="https://podman-desktop.io/blog/podman-desktop-release-0.11#click-on-the-pod-name-redirects-to-the-pod-details-page-1159" class="hash-link" aria-label="Direct link to click-on-the-pod-name-redirects-to-the-pod-details-page-1159" title="Direct link to click-on-the-pod-name-redirects-to-the-pod-details-page-1159"></a></h4>
<p>The list of containers also displays pods, now clicking on the pod name directly redirects to the Pod details page.</p>
<div style="width:100%;height:100%"></div>
<h4 class="anchor anchorWithStickyNavbar_JmGV" id="improved-styles-of-buttons-for-actions-984">Improved styles of buttons for actions <a href="https://github.com/containers/podman-desktop/pull/984" target="_blank" rel="noopener noreferrer">#984</a><a href="https://podman-desktop.io/blog/podman-desktop-release-0.11#improved-styles-of-buttons-for-actions-984" class="hash-link" aria-label="Direct link to improved-styles-of-buttons-for-actions-984" title="Direct link to improved-styles-of-buttons-for-actions-984"></a></h4>
<p>The style of the buttons for actions on item in the list of in details pages have been improved. The background has been removed, but to make the hover state more visible, the "hover" circle is visible and the icon's color is also changing.</p>
<p>On lists:
<img loading="lazy" src="https://user-images.githubusercontent.com/6422176/205979121-b49a0ddf-03bb-4a4d-8d12-bc8d0bd52387.png" alt="list-actions" class="img_SS3x"></p>
<p>On details pages:
<img loading="lazy" src="https://user-images.githubusercontent.com/6422176/205979123-ea420b17-e834-4029-82eb-22949889eee9.png" alt="details-actions" class="img_SS3x"></p>
<h4 class="anchor anchorWithStickyNavbar_JmGV" id="improved-alignments-in-pages-with-lists-1182">Improved alignments in pages with lists <a href="https://github.com/containers/podman-desktop/pull/1182" target="_blank" rel="noopener noreferrer">#1182</a><a href="https://podman-desktop.io/blog/podman-desktop-release-0.11#improved-alignments-in-pages-with-lists-1182" class="hash-link" aria-label="Direct link to improved-alignments-in-pages-with-lists-1182" title="Direct link to improved-alignments-in-pages-with-lists-1182"></a></h4>
<p>The alignment of the items in the list of containers and pods have been improved. The header of each columns are now aligned with the text. and the actions icons are now aligned with the top of the text.</p>
<p><img loading="lazy" src="https://user-images.githubusercontent.com/19958075/212712580-096fd090-0beb-40a4-8dc6-b3fdc5e81e35.png" alt="list-actions" class="img_SS3x"></p>
<hr>
<h2 class="anchor anchorWithStickyNavbar_JmGV" id="other-notable-enhancements">Other Notable Enhancements<a href="https://podman-desktop.io/blog/podman-desktop-release-0.11#other-notable-enhancements" class="hash-link" aria-label="Direct link to Other Notable Enhancements" title="Direct link to Other Notable Enhancements"></a></h2>
<ul>
<li>Statistics area in container details are always shown. (<a href="https://github.com/containers/podman-desktop/pull/1131" target="_blank" rel="noopener noreferrer">#1131</a>)</li>
<li>Add more descriptive wording and more information to extensions. (<a href="https://github.com/containers/podman-desktop/pull/985" target="_blank" rel="noopener noreferrer">#985</a>)</li>
<li>Allow to install on-the fly Podman Desktop extensions using an OCI image. (<a href="https://github.com/containers/podman-desktop/pull/1187" target="_blank" rel="noopener noreferrer">#1187</a>)</li>
<li>Display correctly non-multiplexed stream in logs (when using non interactive mode). (<a href="https://github.com/containers/podman-desktop/pull/1197" target="_blank" rel="noopener noreferrer">#1197</a>)</li>
<li>Font changed from white to gray for non-name sections (creation date, size). (<a href="https://github.com/containers/podman-desktop/pull/1206" target="_blank" rel="noopener noreferrer">#1206</a>)</li>
<li>Add Help/about menu for macOS/Windows/Linux. (<a href="https://github.com/containers/podman-desktop/pull/1207" target="_blank" rel="noopener noreferrer">#1207</a>)</li>
</ul>
<hr>
<h2 class="anchor anchorWithStickyNavbar_JmGV" id="documentation">Documentation<a href="https://podman-desktop.io/blog/podman-desktop-release-0.11#documentation" class="hash-link" aria-label="Direct link to Documentation" title="Direct link to Documentation"></a></h2>
<p>Coming with this new version of Podman Desktop, the documentation has been getting attention (with number of editorial reviews) and new content have been added.</p>
<p>Content for helping users to migrate from Docker to Podman has been added:</p>
<ul>
<li><a href="https://github.com/containers/podman-desktop/pull/1088" target="_blank" rel="noopener noreferrer">Using the <code>podman-mac-helper</code> tool to migrate from Docker to Podman on macOS</a></li>
<li><a href="https://github.com/containers/podman-desktop/pull/1129" target="_blank" rel="noopener noreferrer">better identify podman-mac-helper verification steps</a></li>
<li><a href="https://github.com/containers/podman-desktop/pull/1143" target="_blank" rel="noopener noreferrer">Emulating Docker CLI using Podman to migrate from Docker to Podman</a></li>
<li><a href="https://github.com/containers/podman-desktop/pull/1146" target="_blank" rel="noopener noreferrer">Migrating from Docker section</a></li>
<li><a href="https://github.com/containers/podman-desktop/pull/1152" target="_blank" rel="noopener noreferrer">Verifying that your tools are using Podman</a></li>
<li><a href="https://github.com/containers/podman-desktop/pull/1144" target="_blank" rel="noopener noreferrer">Importing saved containers</a></li>
</ul>
<p>Several of other improvements have been made to the documentation and the website:</p>
<ul>
<li><a href="https://github.com/containers/podman-desktop/pull/962" target="_blank" rel="noopener noreferrer">Troubleshooting for Apple Silicon and brew x86_64 installs</a></li>
<li><a href="https://github.com/containers/podman-desktop/pull/972" target="_blank" rel="noopener noreferrer">Change text of custom binary location, add docs</a></li>
<li><a href="https://github.com/containers/podman-desktop/pull/974" target="_blank" rel="noopener noreferrer">Silent install option for windows</a></li>
<li><a href="https://github.com/containers/podman-desktop/pull/1079" target="_blank" rel="noopener noreferrer">Upgrade to vite v4 and rollup v3</a></li>
<li><a href="https://github.com/containers/podman-desktop/pull/1118" target="_blank" rel="noopener noreferrer">Refreshing documentation on installing on Linux</a></li>
<li><a href="https://github.com/containers/podman-desktop/pull/1130" target="_blank" rel="noopener noreferrer">Identify the shell sessions in Installing on Linux</a></li>
<li><a href="https://github.com/containers/podman-desktop/pull/1133" target="_blank" rel="noopener noreferrer">Website: the linux binary is not a source, it should be promoted as a binary</a></li>
<li><a href="https://github.com/containers/podman-desktop/pull/1162" target="_blank" rel="noopener noreferrer">Introducing tabs for operatings systems and container engines</a></li>
<li><a href="https://github.com/containers/podman-desktop/pull/1165" target="_blank" rel="noopener noreferrer">website: In the landing page, update plugins and container engines lists</a></li>
<li><a href="https://github.com/containers/podman-desktop/pull/1163" target="_blank" rel="noopener noreferrer">Document where code is located within Podman Desktop</a></li>
<li><a href="https://github.com/containers/podman-desktop/pull/1172" target="_blank" rel="noopener noreferrer">(extension-api): Documentation on how to write an extension and use the api</a></li>
</ul>
<hr>
<h2 class="anchor anchorWithStickyNavbar_JmGV" id="notable-bug-fixes">Notable bug fixes<a href="https://podman-desktop.io/blog/podman-desktop-release-0.11#notable-bug-fixes" class="hash-link" aria-label="Direct link to Notable bug fixes" title="Direct link to Notable bug fixes"></a></h2>
<ul>
<li>Update to v0.3.2 Docker Desktop API for extensions - <a href="https://github.com/containers/podman-desktop/pull/1070" target="_blank" rel="noopener noreferrer">#1070</a></li>
<li>Updated link to the Matrix room - <a href="https://github.com/containers/podman-desktop/pull/1076" target="_blank" rel="noopener noreferrer">#1076</a></li>
<li>Report error when container name already exists - <a href="https://github.com/containers/podman-desktop/pull/1142" target="_blank" rel="noopener noreferrer">#1142</a></li>
<li>Fixed connectivity to the Podman machine when the generated socket length is greater than 104 characters in MacOS - <a href="https://github.com/containers/podman-desktop/pull/1145" target="_blank" rel="noopener noreferrer">#1145</a></li>
<li>Do not use long calls for external clients - <a href="https://github.com/containers/podman-desktop/pull/1151" target="_blank" rel="noopener noreferrer">#1151</a></li>
<li>Invalid name/tag for images with registries using a different port - <a href="https://github.com/containers/podman-desktop/pull/1127" target="_blank" rel="noopener noreferrer">#1127</a></li>
<li>Invalid badge count for images when two images have the same tag - <a href="https://github.com/containers/podman-desktop/pull/1124" target="_blank" rel="noopener noreferrer">#1124</a></li>
<li>Fixed detection of WSL2 - <a href="https://github.com/containers/podman-desktop/pull/981" target="_blank" rel="noopener noreferrer">#981</a></li>
<li>Handle invalid kubeconfig files instead of crashing - <a href="https://github.com/containers/podman-desktop/pull/953" target="_blank" rel="noopener noreferrer">#953</a></li>
<li>Removed redundant actions from details pages - <a href="https://github.com/containers/podman-desktop/pull/1200" target="_blank" rel="noopener noreferrer">#1200</a></li>
<li>Fixed registry URL not aligned with header - <a href="https://github.com/containers/podman-desktop/pull/1205" target="_blank" rel="noopener noreferrer">#1205</a></li>
<li>Moved SVGs to reusable components - <a href="https://github.com/containers/podman-desktop/pull/1211" target="_blank" rel="noopener noreferrer">#1211</a></li>
</ul>
<p><strong>Extensions API has also been improved in this new release:</strong></p>
<ul>
<li>(extension-api): Allows to register a factory for kubernetes connection objects (like for container connections) - <a href="https://github.com/containers/podman-desktop/pull/1040" target="_blank" rel="noopener noreferrer">#1040</a></li>
<li>(extension-api): List or inspect containers, be notified on events - <a href="https://github.com/containers/podman-desktop/pull/1041" target="_blank" rel="noopener noreferrer">#1041</a></li>
<li>(extension-api): Allows to get provider notification - <a href="https://github.com/containers/podman-desktop/pull/1045" target="_blank" rel="noopener noreferrer">#1045</a></li>
<li>(dd-extension-api): Implement toast API - <a href="https://github.com/containers/podman-desktop/pull/1154" target="_blank" rel="noopener noreferrer">#1154</a></li>
<li>(extension-api): Moved extension properties to preferences - <a href="https://github.com/containers/podman-desktop/pull/948" target="_blank" rel="noopener noreferrer">#948</a></li>
<li>(dd-extension-api): Added open dev console on dd webview in development mode - <a href="https://github.com/containers/podman-desktop/pull/1071" target="_blank" rel="noopener noreferrer">#1071</a></li>
<li>(extension-api): Added notes on extension and frameworks/tooling of Podman Desktop - <a href="https://github.com/containers/podman-desktop/pull/1166" target="_blank" rel="noopener noreferrer">#1166</a></li>
<li>(extension-api): Documentation on how to write an extension and use the api - <a href="https://github.com/containers/podman-desktop/pull/1172" target="_blank" rel="noopener noreferrer">#1172</a></li>
<li>(dd-extension-api): DD extensions should see only minimal information on containers - <a href="https://github.com/containers/podman-desktop/pull/1191" target="_blank" rel="noopener noreferrer">#1191</a></li>
</ul>
<hr>
<h2 class="anchor anchorWithStickyNavbar_JmGV" id="community-thank-you">Community Thank You<a href="https://podman-desktop.io/blog/podman-desktop-release-0.11#community-thank-you" class="hash-link" aria-label="Direct link to Community Thank You" title="Direct link to Community Thank You"></a></h2>
<p>🎉 Wed like to say a big thank you to everyone who helped to make Podman Desktop 0.11 even better:</p>
<ul>
<li><a href="https://github.com/emmanuelbernard" target="_blank" rel="noopener noreferrer">Emmanuel Bernard</a> in <a href="https://github.com/containers/podman-desktop/pull/962" target="_blank" rel="noopener noreferrer">#962 - Troubleshooting for Apple Silicon</a></li>
<li><a href="https://github.com/eidottermihi" target="_blank" rel="noopener noreferrer">Michael Prankl</a> in <a href="https://github.com/containers/podman-desktop/pull/974" target="_blank" rel="noopener noreferrer">#974 - Silent install option for windows</a></li>
<li><a href="https://github.com/elervik" target="_blank" rel="noopener noreferrer">Endre Lervik</a> in <a href="https://github.com/containers/podman-desktop/pull/1008" target="_blank" rel="noopener noreferrer">#1008 - Namespace selection for deploy to kubernetes</a></li>
<li><a href="https://github.com/evanfpearson" target="_blank" rel="noopener noreferrer">Evan FP</a> in <a href="https://github.com/containers/podman-desktop/pull/1145" target="_blank" rel="noopener noreferrer">#1145 - fixed socket path length error</a></li>
<li><a href="https://github.com/lsm5" target="_blank" rel="noopener noreferrer">Lokesh Mandvekar</a> in <a href="https://github.com/containers/podman-desktop/pull/956" target="_blank" rel="noopener noreferrer">#956 - add repository key to package.json</a></li>
<li><a href="https://github.com/jeffmaury" target="_blank" rel="noopener noreferrer">Jean François Maury</a> in <a href="https://github.com/containers/podman-desktop/pull/1194" target="_blank" rel="noopener noreferrer">#1194 - Cannot create Kind cluster on Windows</a></li>
</ul>
<h2 class="anchor anchorWithStickyNavbar_JmGV" id="final-notes">Final Notes<a href="https://podman-desktop.io/blog/podman-desktop-release-0.11#final-notes" class="hash-link" aria-label="Direct link to Final Notes" title="Direct link to Final Notes"></a></h2>
<p>The complete list of issues fixed in this release is available <a href="https://github.com/containers/podman-desktop/issues?q=is%3Aclosed+milestone%3A0.11.0" target="_blank" rel="noopener noreferrer">here</a>.</p>
<p>Get the latest release from the <a href="https://podman-desktop.io/downloads">Downloads</a> section of the website and boost your development journey with Podman Desktop. Additionally, visit the <a href="https://github.com/containers/podman-desktop" target="_blank" rel="noopener noreferrer">GitHub repository</a> and see how you can help us make Podman Desktop better.</p>]]></content:encoded>
<category>podman-desktop</category>
<category>release</category>
<category>kubernetes</category>
</item>
<item>
<title><![CDATA[Release Notes - Podman Desktop 0.10]]></title>
<link>https://podman-desktop.io/blog/podman-desktop-release-0.10</link>
<guid>https://podman-desktop.io/blog/podman-desktop-release-0.10</guid>
<pubDate>Thu, 01 Dec 2022 00:00:00 GMT</pubDate>
<description><![CDATA[Podman Desktop 0.10 has been released! New Create Container Wizard, improved Kubernetes workflows, revamped registries configuration, and more!]]></description>
<content:encoded><![CDATA[<p>This release note covers Podman Desktop 0.10 release changes.</p>
<ul>
<li><strong>Containers Configuration</strong>: Container creation wizzard allowing to define environment variables, networking and more configuration options.</li>
<li><strong>Kubernetes Improvements</strong>: Play Kubernetes YAML, custom Kubeconfig path support, reload of kube context.</li>
<li><strong>Registries Configuration</strong>: Revamped registries configuration UI.</li>
<li><strong>Podman Version</strong>: Podman 4.3.1 now included in Windows and Mac installers.</li>
<li><strong>UX/UI Improvements</strong>: Improved lists, better contrast, and more.</li>
</ul>
<p>Podman Desktop 0.10 is now available. <a href="https://podman-desktop.io/downloads">Click here to download it</a>!</p>
<hr>
<h2 class="anchor anchorWithStickyNavbar_JmGV" id="release-details">Release Details<a href="https://podman-desktop.io/blog/podman-desktop-release-0.10#release-details" class="hash-link" aria-label="Direct link to Release Details" title="Direct link to Release Details"></a></h2>
<h3 class="anchor anchorWithStickyNavbar_JmGV" id="new-configuration-wizzard-to-create-containers-773">New configuration wizzard to create containers (<a href="https://github.com/containers/podman-desktop/pull/773" target="_blank" rel="noopener noreferrer">#773</a>)<a href="https://podman-desktop.io/blog/podman-desktop-release-0.10#new-configuration-wizzard-to-create-containers-773" class="hash-link" aria-label="Direct link to new-configuration-wizzard-to-create-containers-773" title="Direct link to new-configuration-wizzard-to-create-containers-773"></a></h3>
<p>Until now, we could only specify port binding when building images to start containers. The create container wizzard now includes several options enabling configuring volumes, environment variables, restart policy and settings on networking and security. It is also possible to reuse an existing (and already configured) a network when creating containers.</p>
<p><img loading="lazy" alt="new container creation wizard" src="https://podman-desktop.io/assets/images/new_container_creation_wizard-530d6cccba3d06b5c8db1b9e387a31c7.gif" width="800" height="465" class="img_SS3x"></p>
<h3 class="anchor anchorWithStickyNavbar_JmGV" id="kubernetes-capabilities-improvements">Kubernetes Capabilities Improvements<a href="https://podman-desktop.io/blog/podman-desktop-release-0.10#kubernetes-capabilities-improvements" class="hash-link" aria-label="Direct link to Kubernetes Capabilities Improvements" title="Direct link to Kubernetes Capabilities Improvements"></a></h3>
<p><strong>Custom Kubeconfig file path (<a href="https://github.com/containers/podman-desktop/pull/780" target="_blank" rel="noopener noreferrer">#780</a>)</strong></p>
<p>Kubeconfig path location is now configurable from <strong><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="gear" class="svg-inline--fa fa-gear fa-lg" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path fill="currentColor" d="M495.9 166.6c3.2 8.7 .5 18.4-6.4 24.6l-43.3 39.4c1.1 8.3 1.7 16.8 1.7 25.4s-.6 17.1-1.7 25.4l43.3 39.4c6.9 6.2 9.6 15.9 6.4 24.6c-4.4 11.9-9.7 23.3-15.8 34.3l-4.7 8.1c-6.6 11-14 21.4-22.1 31.2c-5.9 7.2-15.7 9.6-24.5 6.8l-55.7-17.7c-13.4 10.3-28.2 18.9-44 25.4l-12.5 57.1c-2 9.1-9 16.3-18.2 17.8c-13.8 2.3-28 3.5-42.5 3.5s-28.7-1.2-42.5-3.5c-9.2-1.5-16.2-8.7-18.2-17.8l-12.5-57.1c-15.8-6.5-30.6-15.1-44-25.4L83.1 425.9c-8.8 2.8-18.6 .3-24.5-6.8c-8.1-9.8-15.5-20.2-22.1-31.2l-4.7-8.1c-6.1-11-11.4-22.4-15.8-34.3c-3.2-8.7-.5-18.4 6.4-24.6l43.3-39.4C64.6 273.1 64 264.6 64 256s.6-17.1 1.7-25.4L22.4 191.2c-6.9-6.2-9.6-15.9-6.4-24.6c4.4-11.9 9.7-23.3 15.8-34.3l4.7-8.1c6.6-11 14-21.4 22.1-31.2c5.9-7.2 15.7-9.6 24.5-6.8l55.7 17.7c13.4-10.3 28.2-18.9 44-25.4l12.5-57.1c2-9.1 9-16.3 18.2-17.8C227.3 1.2 241.5 0 256 0s28.7 1.2 42.5 3.5c9.2 1.5 16.2 8.7 18.2 17.8l12.5 57.1c15.8 6.5 30.6 15.1 44 25.4l55.7-17.7c8.8-2.8 18.6-.3 24.5 6.8c8.1 9.8 15.5 20.2 22.1 31.2l4.7 8.1c6.1 11 11.4 22.4 15.8 34.3zM256 336a80 80 0 1 0 0-160 80 80 0 1 0 0 160z"></path></svg> Settings &gt; Preferences &gt; Kubernetes: Kubeconfig</strong> and can be set to a custom path. By default, Podman Desktop use the path <code>$HOME/.kube/config</code> for the Kubeconfig file.</p>
<p><img loading="lazy" alt="custom kubeconfig file path" src="https://podman-desktop.io/assets/images/custom-kubeconfig-a1b21477c3bc825c93f8a789292de160.png" width="2324" height="1424" class="img_SS3x"></p>
<p><strong>Play Kubernetes YAML from the Pods list (<a href="https://github.com/containers/podman-desktop/pull/739" target="_blank" rel="noopener noreferrer">#739</a>)</strong></p>
<p>Podman Desktop enables to play existing Kubernetes YAML files. This is now available from <code>Play Kubernetes YAML</code> button added to the Pods list, in addition to the Containers list.</p>
<p><img loading="lazy" alt="play k8s yaml" src="https://podman-desktop.io/assets/images/play_k8s_yaml-3f66f50aa7135e66a436b02c1b278dfc.gif" width="800" height="500" class="img_SS3x"></p>
<p><strong>Kube context automatically reloaded when updated (<a href="https://github.com/containers/podman-desktop/pull/813" target="_blank" rel="noopener noreferrer">#813</a>)</strong></p>
<p>Any change to the kube context will now be detected by Podman Desktop in its running state. The system tray, allowing to select which Kubernetes environment to work with, will now reload the kube context without restarting Podman Desktop.</p>
<h3 class="anchor anchorWithStickyNavbar_JmGV" id="revamped-container-registries-ui-446">Revamped Container Registries UI (<a href="https://github.com/containers/podman-desktop/issues/446" target="_blank" rel="noopener noreferrer">#446</a>)<a href="https://podman-desktop.io/blog/podman-desktop-release-0.10#revamped-container-registries-ui-446" class="hash-link" aria-label="Direct link to revamped-container-registries-ui-446" title="Direct link to revamped-container-registries-ui-446"></a></h3>
<p>The registries configuration UI has been revamped. Instead of using tiles for displaying the registries, now it uses a list where each registry can be added or edited directly in the list. The kebab menu provides options to edit or remove a registry from the list.</p>
<p><img loading="lazy" alt="registries" src="https://podman-desktop.io/assets/images/registries-1194f05e7d35fe4544c74a513d1dc0ed.png" width="2428" height="1494" class="img_SS3x"></p>
<h3 class="anchor anchorWithStickyNavbar_JmGV" id="update-to-podman-431-913">Update to Podman 4.3.1 (<a href="https://github.com/containers/podman-desktop/issues/913" target="_blank" rel="noopener noreferrer">#913</a>)<a href="https://podman-desktop.io/blog/podman-desktop-release-0.10#update-to-podman-431-913" class="hash-link" aria-label="Direct link to update-to-podman-431-913" title="Direct link to update-to-podman-431-913"></a></h3>
<p>Podman Desktop 0.10 is now embedding <a href="https://github.com/containers/podman/releases/tag/v4.3.1" target="_blank" rel="noopener noreferrer">Podman 4.3.1</a> in Windows and macOS installers.</p>
<h3 class="anchor anchorWithStickyNavbar_JmGV" id="uiux-improvements">UI/UX Improvements<a href="https://podman-desktop.io/blog/podman-desktop-release-0.10#uiux-improvements" class="hash-link" aria-label="Direct link to UI/UX Improvements" title="Direct link to UI/UX Improvements"></a></h3>
<p><strong>Improved lists UX (<a href="https://github.com/containers/podman-desktop/pull/877" target="_blank" rel="noopener noreferrer">#877</a>)</strong></p>
<p>To reduce the width used in the lists when displaying all the icons, main actions icons are now always displayed (before it was on hover) and the secondary actions are displayed in a kebab menu. For example Start/Stop and delete are primary actions while open the browser, inspect, generate kube yaml, etc. are secondary options.</p>
<p><img loading="lazy" alt="kebab menu" src="https://podman-desktop.io/assets/images/kebab-menu-caf501d63e7e0c8a8e957c55093b0f7b.png" width="2324" height="1424" class="img_SS3x"></p>
<p><strong>Delay appearance of text in navbar (<a href="https://github.com/containers/podman-desktop/pull/767" target="_blank" rel="noopener noreferrer">#767</a>)</strong></p>
<p>When minimizing or expanding the navbar, the text was overlapping for a few second the page. Now it's displayed with a fading animation.</p>
<p><strong>Selected state: better text color contrast (<a href="https://github.com/containers/podman-desktop/pull/802" target="_blank" rel="noopener noreferrer">#802</a>)</strong></p>
<p>In the <code>Images</code> page, on hover for both the image and the name column, the text contrast has been increased for better visibility: violet indicates that you have selected it.</p>
<p><img loading="lazy" alt="text color when hover" src="https://podman-desktop.io/assets/images/text-color-14e899e089464c8f18a597217045a317.gif" width="800" height="451" class="img_SS3x"></p>
<p><strong>On Linux and Windows, the menu bar is now hidden by default (<a href="https://github.com/containers/podman-desktop/pull/668" target="_blank" rel="noopener noreferrer">#668</a>)</strong></p>
<p>With this change, the menu bar looks more integrated to the Operating System. The menu can appear if you hit the <code>Alt</code> key. Thanks to <a href="https://github.com/dylanmtaylor" target="_blank" rel="noopener noreferrer">Dylan M. Taylor</a> for contributing to fix this.</p>
<p><strong>Exit when clicking on the close icon of the dashboard on Linux (<a href="https://github.com/containers/podman-desktop/pull/671" target="_blank" rel="noopener noreferrer">#671</a>)</strong></p>
<p>For most users on Linux, there is no tray icon support. In this situation, when closed, Podman Desktop continues to run in background. <a href="https://github.com/dylanmtaylor" target="_blank" rel="noopener noreferrer">Dylan M. Taylor</a> added a property to exit the app by default when clicking on the close icon. For people having tray icon support or with the desire of a different behavior, it is possible to disable it from the Settings.</p>
<hr>
<h2 class="anchor anchorWithStickyNavbar_JmGV" id="other-notable-enhancements">Other Notable Enhancements<a href="https://podman-desktop.io/blog/podman-desktop-release-0.10#other-notable-enhancements" class="hash-link" aria-label="Direct link to Other Notable Enhancements" title="Direct link to Other Notable Enhancements"></a></h2>
<ul>
<li>Rename <code>Started</code> into <code>Age</code> in Containers list.(<a href="https://github.com/containers/podman-desktop/pull/878" target="_blank" rel="noopener noreferrer">#878</a>)</li>
<li>Added domain validation when adding a registry. (<a href="https://github.com/containers/podman-desktop/pull/838" target="_blank" rel="noopener noreferrer">#838</a>)</li>
<li>Provided a consistent behavior with Podman CLI, <code>podman-machine-default</code> is now the default name when creating a Podman machine from Podman Desktop. (<a href="https://github.com/containers/podman-desktop/pull/775" target="_blank" rel="noopener noreferrer">#775</a>)</li>
</ul>
<hr>
<h2 class="anchor anchorWithStickyNavbar_JmGV" id="notable-bug-fixes">Notable bug fixes<a href="https://podman-desktop.io/blog/podman-desktop-release-0.10#notable-bug-fixes" class="hash-link" aria-label="Direct link to Notable bug fixes" title="Direct link to Notable bug fixes"></a></h2>
<ul>
<li>Fixed error handling when pulling images of Desktop Extensions. (<a href="https://github.com/containers/podman-desktop/pull/782" target="_blank" rel="noopener noreferrer">#782</a>)</li>
<li>Fixed use of the full height of the screen when displaying log in the details of a container. (<a href="https://github.com/containers/podman-desktop/discussions/946" target="_blank" rel="noopener noreferrer">#946</a>)</li>
<li>Fixed First start of Podman Desktop on flatpak was not seeing the podman engine (<a href="https://github.com/containers/podman-desktop/pull/860" target="_blank" rel="noopener noreferrer">#860</a>)</li>
</ul>
<h2 class="anchor anchorWithStickyNavbar_JmGV" id="community-thank-you">Community Thank You<a href="https://podman-desktop.io/blog/podman-desktop-release-0.10#community-thank-you" class="hash-link" aria-label="Direct link to Community Thank You" title="Direct link to Community Thank You"></a></h2>
<p>🎉 Wed like to say a big thank you to everyone who helped to make Podman Desktop 0.10 even better:</p>
<ul>
<li><a href="https://github.com/dylanmtaylor" target="_blank" rel="noopener noreferrer">Dylan M. Taylor</a> in <a href="https://github.com/containers/podman-desktop/pull/671" target="_blank" rel="noopener noreferrer">#671</a></li>
<li><a href="https://github.com/osslate" target="_blank" rel="noopener noreferrer">Fionn Kelleher</a> in <a href="https://github.com/containers/podman-desktop/pull/713" target="_blank" rel="noopener noreferrer">#713</a></li>
<li><a href="https://github.com/rsvoboda" target="_blank" rel="noopener noreferrer">Rostislav Svoboda</a> in <a href="https://github.com/containers/podman-desktop/pull/737" target="_blank" rel="noopener noreferrer">#737</a></li>
<li><a href="https://github.com/shemanaev" target="_blank" rel="noopener noreferrer">Denis Shemanaev</a> in <a href="https://github.com/containers/podman-desktop/pull/783" target="_blank" rel="noopener noreferrer">#783</a></li>
<li><a href="https://github.com/themr0c" target="_blank" rel="noopener noreferrer">Fabrice Flore-Thébault</a> in <a href="https://github.com/containers/podman-desktop/pull/856" target="_blank" rel="noopener noreferrer">#856</a></li>
<li><a href="https://github.com/KevinAtSesam" target="_blank" rel="noopener noreferrer">Kevin</a> in <a href="https://github.com/containers/podman-desktop/pull/864" target="_blank" rel="noopener noreferrer">#864</a></li>
<li><a href="https://github.com/sfrunza13" target="_blank" rel="noopener noreferrer">@sfrunza13</a> in <a href="https://github.com/containers/podman-desktop/pull/872" target="_blank" rel="noopener noreferrer">#872</a></li>
<li><a href="https://github.com/anjannath" target="_blank" rel="noopener noreferrer">Anjan Nath</a> in <a href="https://github.com/containers/podman-desktop/pull/918" target="_blank" rel="noopener noreferrer">#918</a></li>
</ul>
<h2 class="anchor anchorWithStickyNavbar_JmGV" id="final-notes">Final Notes<a href="https://podman-desktop.io/blog/podman-desktop-release-0.10#final-notes" class="hash-link" aria-label="Direct link to Final Notes" title="Direct link to Final Notes"></a></h2>
<p>The complete list of issues fixed in this release is available <a href="https://github.com/containers/podman-desktop/issues?q=is%3Aclosed+milestone%3A0.10.0" target="_blank" rel="noopener noreferrer">here</a>.</p>
<p>Get the latest release from the <a href="https://podman-desktop.io/downloads">Downloads</a> section of the website and boost your development journey with Podman Desktop. Additionally, visit the <a href="https://github.com/containers/podman-desktop" target="_blank" rel="noopener noreferrer">GitHub repository</a> and see how you can help us make Podman Desktop better.</p>]]></content:encoded>
<category>podman-desktop</category>
<category>release</category>
<category>kubernetes</category>
</item>
<item>
<title><![CDATA[Build & run Podman Desktop in a DevContainer]]></title>
<link>https://podman-desktop.io/blog/develop-using-devcontainer</link>
<guid>https://podman-desktop.io/blog/develop-using-devcontainer</guid>
<pubDate>Thu, 17 Nov 2022 00:00:00 GMT</pubDate>
<description><![CDATA[Develop Podman Desktop using a DevContainer locally or using GitHub Codespaces.]]></description>
<content:encoded><![CDATA[<p>GitHub <a href="https://github.blog/changelog/2022-11-09-codespaces-for-free-and-pro-accounts/" target="_blank" rel="noopener noreferrer">announced last week</a> that Codespaces is available for everyone and it includes free minutes.</p>
<p>Let see how we can use a <a href="https://containers.dev/" target="_blank" rel="noopener noreferrer">Development Container</a> having all the tools to build and run Podman Desktop. The Development Container works locally using Visual Studio Code but in this blog post we will see how it works directly with a simple click from GitHub.</p>
<p>The challenges are to run a desktop tool (Podman Desktop) and running a container engine (Podman) inside this Development Container without using too many memory !</p>
<h2 class="anchor anchorWithStickyNavbar_JmGV" id="defining-image-of-the-container">Defining image of the container<a href="https://podman-desktop.io/blog/develop-using-devcontainer#defining-image-of-the-container" class="hash-link" aria-label="Direct link to Defining image of the container" title="Direct link to Defining image of the container"></a></h2>
<p>The first thing is in the choice of the image for the container. It is possible to pick-up a default image and add some features but there is no existing feature for Podman at <a href="https://github.com/devcontainers/features/tree/main/src" target="_blank" rel="noopener noreferrer">https://github.com/devcontainers/features/tree/main/src</a> and most of the features are expecting to run on top of Debian/Ubuntu</p>
<p>If you are not interested in how to setup the image, jump to the <a href="https://podman-desktop.io/blog/develop-using-devcontainer#configure-the-devcontainer-using-devcontainerjson">next section</a>.</p>
<p>Podman binaries are available quickly after the releases for Fedora. I decided then to use <code>Fedora 37</code> as the base image.</p>
<p>Let start the Containerfile using:</p>
<div class="language-docker codeBlockContainer_mQmQ theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockContent_D5yF"><pre tabindex="0" class="prism-code language-docker codeBlock_RMoD thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_AclH"><span class="token-line" style="color:#F8F8F2"><span class="token instruction keyword" style="color:rgb(189, 147, 249);font-style:italic">FROM</span><span class="token instruction"> quay.io/fedora/fedora:37</span><br></span></code></pre><div class="buttonGroup_aaMX"><button type="button" aria-label="Copy code to clipboard" title="Copy" class="clean-btn"><span class="copyButtonIcons_z5j7" aria-hidden="true"><svg viewBox="0 0 24 24" class="copyButtonIcon_FoOz"><path fill="currentColor" d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"></path></svg><svg viewBox="0 0 24 24" class="copyButtonSuccessIcon_L0B6"><path fill="currentColor" d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"></path></svg></span></button></div></div></div>
<p>Then I install Node.js 16 from official nodejs.org repository. It's easier to switch to the version that we need.</p>
<div class="language-docker codeBlockContainer_mQmQ theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockContent_D5yF"><pre tabindex="0" class="prism-code language-docker codeBlock_RMoD thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_AclH"><span class="token-line" style="color:#F8F8F2"><span class="token comment" style="color:rgb(98, 114, 164)"># install Node.js + yarn</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token instruction keyword" style="color:rgb(189, 147, 249);font-style:italic">ENV</span><span class="token instruction"> NODE_VERSION 16.18.1</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token instruction keyword" style="color:rgb(189, 147, 249);font-style:italic">RUN</span><span class="token instruction"> curl -SLO </span><span class="token instruction string" style="color:rgb(255, 121, 198)">"https://nodejs.org/dist/v$NODE_VERSION/node-v$NODE_VERSION-linux-x64.tar.gz"</span><span class="token instruction"> &amp;&amp; </span><span class="token instruction operator">\</span><span class="token instruction"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token instruction"> tar -xzf </span><span class="token instruction string" style="color:rgb(255, 121, 198)">"node-v$NODE_VERSION-linux-x64.tar.gz"</span><span class="token instruction"> -C /usr/local --strip-components=1 &amp;&amp; </span><span class="token instruction operator">\</span><span class="token instruction"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token instruction"> rm </span><span class="token instruction string" style="color:rgb(255, 121, 198)">"node-v$NODE_VERSION-linux-x64.tar.gz"</span><span class="token instruction"> &amp;&amp; </span><span class="token instruction operator">\</span><span class="token instruction"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token instruction"> npm install -g yarn</span><br></span></code></pre><div class="buttonGroup_aaMX"><button type="button" aria-label="Copy code to clipboard" title="Copy" class="clean-btn"><span class="copyButtonIcons_z5j7" aria-hidden="true"><svg viewBox="0 0 24 24" class="copyButtonIcon_FoOz"><path fill="currentColor" d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"></path></svg><svg viewBox="0 0 24 24" class="copyButtonSuccessIcon_L0B6"><path fill="currentColor" d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"></path></svg></span></button></div></div></div>
<p>Now, all system dependencies used to run an Electron application needs to be installed.</p>
<p>Podman is also installed so we can run some containers inside this container.</p>
<p>And of course, we need to install VNC (I choose <a href="https://tigervnc.org/" target="_blank" rel="noopener noreferrer">tigervnc</a>) with a light Window Manager (<a href="http://fluxbox.org/" target="_blank" rel="noopener noreferrer">fluxbox</a>).</p>
<p>To connect to the display of the container, we need to expose VNC over HTML/websocket using <a href="https://novnc.com/" target="_blank" rel="noopener noreferrer">noVNC</a></p>
<p>xterm is installed to start a terminal from the VNC side.</p>
<div class="language-docker codeBlockContainer_mQmQ theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockContent_D5yF"><pre tabindex="0" class="prism-code language-docker codeBlock_RMoD thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_AclH"><span class="token-line" style="color:#F8F8F2"><span class="token instruction keyword" style="color:rgb(189, 147, 249);font-style:italic">RUN</span><span class="token instruction"> dnf -y update &amp;&amp; </span><span class="token instruction operator">\</span><span class="token instruction"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token instruction"> yum -y reinstall shadow-utils &amp;&amp; </span><span class="token instruction operator">\</span><span class="token instruction"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token instruction"> yum install -y git </span><span class="token instruction operator">\</span><span class="token instruction"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token instruction"> </span><span class="token instruction comment" style="color:rgb(98, 114, 164)"># dependencies for Podman Desktop</span><span class="token instruction"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token instruction"> nss </span><span class="token instruction operator">\</span><span class="token instruction"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token instruction"> atk </span><span class="token instruction operator">\</span><span class="token instruction"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token instruction"> at-spi2-atk </span><span class="token instruction operator">\</span><span class="token instruction"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token instruction"> cups-libs </span><span class="token instruction operator">\</span><span class="token instruction"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token instruction"> gtk3 </span><span class="token instruction operator">\</span><span class="token instruction"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token instruction"> </span><span class="token instruction comment" style="color:rgb(98, 114, 164)"># for remote Display</span><span class="token instruction"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token instruction"> fluxbox </span><span class="token instruction operator">\</span><span class="token instruction"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token instruction"> tigervnc-server </span><span class="token instruction operator">\</span><span class="token instruction"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token instruction"> xorg-x11-fonts-Type1 </span><span class="token instruction operator">\</span><span class="token instruction"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token instruction"> novnc </span><span class="token instruction operator">\</span><span class="token instruction"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token instruction"> supervisor </span><span class="token instruction operator">\</span><span class="token instruction"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token instruction"> xdpyinfo </span><span class="token instruction operator">\</span><span class="token instruction"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token instruction"> </span><span class="token instruction comment" style="color:rgb(98, 114, 164)"># for podman</span><span class="token instruction"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token instruction"> podman </span><span class="token instruction operator">\</span><span class="token instruction"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token instruction"> fuse-overlayfs --exclude container-selinux </span><span class="token instruction operator">\</span><span class="token instruction"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token instruction"> xterm &amp;&amp; </span><span class="token instruction operator">\</span><span class="token instruction"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token instruction"> rm -rf /var/cache /var/log/dnf* /var/log/yum.*</span><br></span></code></pre><div class="buttonGroup_aaMX"><button type="button" aria-label="Copy code to clipboard" title="Copy" class="clean-btn"><span class="copyButtonIcons_z5j7" aria-hidden="true"><svg viewBox="0 0 24 24" class="copyButtonIcon_FoOz"><path fill="currentColor" d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"></path></svg><svg viewBox="0 0 24 24" class="copyButtonSuccessIcon_L0B6"><path fill="currentColor" d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"></path></svg></span></button></div></div></div>
<p>Supervisord setup the launch of the VNC server and the Window manager</p>
<div class="language-docker codeBlockContainer_mQmQ theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockContent_D5yF"><pre tabindex="0" class="prism-code language-docker codeBlock_RMoD thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_AclH"><span class="token-line" style="color:#F8F8F2"><span class="token instruction keyword" style="color:rgb(189, 147, 249);font-style:italic">COPY</span><span class="token instruction"> supervisord.conf /etc/supervisord.conf</span><br></span></code></pre><div class="buttonGroup_aaMX"><button type="button" aria-label="Copy code to clipboard" title="Copy" class="clean-btn"><span class="copyButtonIcons_z5j7" aria-hidden="true"><svg viewBox="0 0 24 24" class="copyButtonIcon_FoOz"><path fill="currentColor" d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"></path></svg><svg viewBox="0 0 24 24" class="copyButtonSuccessIcon_L0B6"><path fill="currentColor" d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"></path></svg></span></button></div></div></div>
<p>A custom theme for fluxbox:</p>
<div class="language-docker codeBlockContainer_mQmQ theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockContent_D5yF"><pre tabindex="0" class="prism-code language-docker codeBlock_RMoD thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_AclH"><span class="token-line" style="color:#F8F8F2"><span class="token instruction keyword" style="color:rgb(189, 147, 249);font-style:italic">COPY</span><span class="token instruction"> fluxbox /usr/share/fluxbox/init</span><br></span></code></pre><div class="buttonGroup_aaMX"><button type="button" aria-label="Copy code to clipboard" title="Copy" class="clean-btn"><span class="copyButtonIcons_z5j7" aria-hidden="true"><svg viewBox="0 0 24 24" class="copyButtonIcon_FoOz"><path fill="currentColor" d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"></path></svg><svg viewBox="0 0 24 24" class="copyButtonSuccessIcon_L0B6"><path fill="currentColor" d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"></path></svg></span></button></div></div></div>
<p>Then we need a special configuration to allow to have Podman working inside the container</p>
<p>We add the <code>podman-desktop</code> user with correct range on subuid and subgid when running containers. I used the <a href="https://github.com/containers/podman/blob/main/docs/tutorials/rootless_tutorial.md#etcsubuid-and-etcsubgid-configuration" target="_blank" rel="noopener noreferrer">tutorial</a>.</p>
<div class="language-docker codeBlockContainer_mQmQ theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockContent_D5yF"><pre tabindex="0" class="prism-code language-docker codeBlock_RMoD thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_AclH"><span class="token-line" style="color:#F8F8F2"><span class="token instruction keyword" style="color:rgb(189, 147, 249);font-style:italic">RUN</span><span class="token instruction"> useradd -u 1000 podman-desktop &amp;&amp; echo podman-desktop:10000:5000 &gt; /etc/subuid &amp;&amp; echo podman-desktop:10000:5000 &gt; /etc/subgid</span><br></span></code></pre><div class="buttonGroup_aaMX"><button type="button" aria-label="Copy code to clipboard" title="Copy" class="clean-btn"><span class="copyButtonIcons_z5j7" aria-hidden="true"><svg viewBox="0 0 24 24" class="copyButtonIcon_FoOz"><path fill="currentColor" d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"></path></svg><svg viewBox="0 0 24 24" class="copyButtonSuccessIcon_L0B6"><path fill="currentColor" d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"></path></svg></span></button></div></div></div>
<p>Then use some default configuration files</p>
<div class="language-docker codeBlockContainer_mQmQ theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockContent_D5yF"><pre tabindex="0" class="prism-code language-docker codeBlock_RMoD thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_AclH"><span class="token-line" style="color:#F8F8F2"><span class="token comment" style="color:rgb(98, 114, 164)"># initialize conf files</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token instruction keyword" style="color:rgb(189, 147, 249);font-style:italic">ADD</span><span class="token instruction"> https://raw.githubusercontent.com/containers/libpod/master/contrib/podmanimage/stable/containers.conf /etc/containers/containers.conf</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token instruction keyword" style="color:rgb(189, 147, 249);font-style:italic">ADD</span><span class="token instruction"> https://raw.githubusercontent.com/containers/libpod/master/contrib/podmanimage/stable/podman-containers.conf /home/podman-desktop/.config/containers/containers.conf</span><br></span></code></pre><div class="buttonGroup_aaMX"><button type="button" aria-label="Copy code to clipboard" title="Copy" class="clean-btn"><span class="copyButtonIcons_z5j7" aria-hidden="true"><svg viewBox="0 0 24 24" class="copyButtonIcon_FoOz"><path fill="currentColor" d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"></path></svg><svg viewBox="0 0 24 24" class="copyButtonSuccessIcon_L0B6"><path fill="currentColor" d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"></path></svg></span></button></div></div></div>
<p>and make sure that all permissions are correct following the guide <a href="https://www.redhat.com/sysadmin/podman-inside-container" target="_blank" rel="noopener noreferrer">https://www.redhat.com/sysadmin/podman-inside-container</a></p>
<div class="language-docker codeBlockContainer_mQmQ theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockContent_D5yF"><pre tabindex="0" class="prism-code language-docker codeBlock_RMoD thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_AclH"><span class="token-line" style="color:#F8F8F2"><span class="token comment" style="color:rgb(98, 114, 164)"># set permissions</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token instruction keyword" style="color:rgb(189, 147, 249);font-style:italic">RUN</span><span class="token instruction"> chown podman-desktop:podman-desktop -R /home/podman-desktop &amp;&amp; chmod 644 /etc/containers/containers.conf &amp;&amp; </span><span class="token instruction operator">\</span><span class="token instruction"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token instruction"> mkdir -p /var/lib/shared/overlay-images /var/lib/shared/overlay-layers /var/lib/shared/vfs-images /var/lib/shared/vfs-layers; touch /var/lib/shared/overlay-images/images.lock; touch /var/lib/shared/overlay-layers/layers.lock; touch /var/lib/shared/vfs-images/images.lock; touch /var/lib/shared/vfs-layers/layers.lock &amp;&amp; </span><span class="token instruction operator">\</span><span class="token instruction"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token instruction"> mkdir -p /run/user/1000 &amp;&amp; chown podman-desktop:podman-desktop /run/user/1000</span><br></span></code></pre><div class="buttonGroup_aaMX"><button type="button" aria-label="Copy code to clipboard" title="Copy" class="clean-btn"><span class="copyButtonIcons_z5j7" aria-hidden="true"><svg viewBox="0 0 24 24" class="copyButtonIcon_FoOz"><path fill="currentColor" d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"></path></svg><svg viewBox="0 0 24 24" class="copyButtonSuccessIcon_L0B6"><path fill="currentColor" d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"></path></svg></span></button></div></div></div>
<p>plus define an empty user namespace.</p>
<div class="language-docker codeBlockContainer_mQmQ theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockContent_D5yF"><pre tabindex="0" class="prism-code language-docker codeBlock_RMoD thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_AclH"><span class="token-line" style="color:#F8F8F2"><span class="token instruction keyword" style="color:rgb(189, 147, 249);font-style:italic">ENV</span><span class="token instruction"> _CONTAINERS_USERNS_CONFIGURED=</span><span class="token instruction string" style="color:rgb(255, 121, 198)">""</span><br></span></code></pre><div class="buttonGroup_aaMX"><button type="button" aria-label="Copy code to clipboard" title="Copy" class="clean-btn"><span class="copyButtonIcons_z5j7" aria-hidden="true"><svg viewBox="0 0 24 24" class="copyButtonIcon_FoOz"><path fill="currentColor" d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"></path></svg><svg viewBox="0 0 24 24" class="copyButtonSuccessIcon_L0B6"><path fill="currentColor" d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"></path></svg></span></button></div></div></div>
<p>Make sure Podman will create the socket in an expected directory:</p>
<div class="language-docker codeBlockContainer_mQmQ theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockContent_D5yF"><pre tabindex="0" class="prism-code language-docker codeBlock_RMoD thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_AclH"><span class="token-line" style="color:#F8F8F2"><span class="token comment" style="color:rgb(98, 114, 164)"># socket path for podman</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token instruction keyword" style="color:rgb(189, 147, 249);font-style:italic">ENV</span><span class="token instruction"> XDG_RUNTIME_DIR=/run/user/1000</span><br></span></code></pre><div class="buttonGroup_aaMX"><button type="button" aria-label="Copy code to clipboard" title="Copy" class="clean-btn"><span class="copyButtonIcons_z5j7" aria-hidden="true"><svg viewBox="0 0 24 24" class="copyButtonIcon_FoOz"><path fill="currentColor" d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"></path></svg><svg viewBox="0 0 24 24" class="copyButtonSuccessIcon_L0B6"><path fill="currentColor" d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"></path></svg></span></button></div></div></div>
<p>OK ! we have a custom Containerfile providing all the tools to build and run Podman Desktop (using VNC for the display), run Podman and run Electron.</p>
<p>The current file is available at <a href="https://github.com/containers/podman-desktop/blob/main/.devcontainer/.parent/Containerfile" target="_blank" rel="noopener noreferrer">https://github.com/containers/podman-desktop/blob/main/.devcontainer/.parent/Containerfile</a></p>
<p>Let's configure the DevContainer.</p>
<h2 class="anchor anchorWithStickyNavbar_JmGV" id="configure-the-devcontainer-using-devcontainerjson">Configure the DevContainer using devcontainer.json<a href="https://podman-desktop.io/blog/develop-using-devcontainer#configure-the-devcontainer-using-devcontainerjson" class="hash-link" aria-label="Direct link to Configure the DevContainer using devcontainer.json" title="Direct link to Configure the DevContainer using devcontainer.json"></a></h2>
<p>DevContainer definition is stored at <code>.devcontainer/devcontainer.json</code> file.</p>
<p>We need to reuse the image of the previous step. For that let's use the build section of the <code>devcontainer.json</code> file.</p>
<div class="language-json codeBlockContainer_mQmQ theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockContent_D5yF"><pre tabindex="0" class="prism-code language-json codeBlock_RMoD thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_AclH"><span class="token-line" style="color:#F8F8F2"><span class="token property">"build"</span><span class="token operator">:</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token property">"dockerfile"</span><span class="token operator">:</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">"Containerfile"</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><br></span></code></pre><div class="buttonGroup_aaMX"><button type="button" aria-label="Copy code to clipboard" title="Copy" class="clean-btn"><span class="copyButtonIcons_z5j7" aria-hidden="true"><svg viewBox="0 0 24 24" class="copyButtonIcon_FoOz"><path fill="currentColor" d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"></path></svg><svg viewBox="0 0 24 24" class="copyButtonSuccessIcon_L0B6"><path fill="currentColor" d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"></path></svg></span></button></div></div></div>
<p>In order to avoid to redo all the build steps each time we open a workspace using this dev container, we published the image to quay.io at <a href="https://quay.io/repository/podman-desktop/devcontainer-parent?tab=tags&amp;tag=next" target="_blank" rel="noopener noreferrer">quay.io/podman-desktop/devcontainer-parent<!-- -->:next<!-- -->
</a>. This parent image is not changing much so it's better to use is as a parent one.</p>
<p>Inside <code>.devcontainer</code> directory there is a <code>.parent</code> directory with everything related to the parent image.</p>
<p>And in the <code>.devcontainer/Containerfile</code> file we reference this image</p>
<div class="language-docker codeBlockContainer_mQmQ theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockContent_D5yF"><pre tabindex="0" class="prism-code language-docker codeBlock_RMoD thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_AclH"><span class="token-line" style="color:#F8F8F2"><span class="token instruction keyword" style="color:rgb(189, 147, 249);font-style:italic">FROM</span><span class="token instruction"> quay.io/podman-desktop/devcontainer-parent:next</span><br></span></code></pre><div class="buttonGroup_aaMX"><button type="button" aria-label="Copy code to clipboard" title="Copy" class="clean-btn"><span class="copyButtonIcons_z5j7" aria-hidden="true"><svg viewBox="0 0 24 24" class="copyButtonIcon_FoOz"><path fill="currentColor" d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"></path></svg><svg viewBox="0 0 24 24" class="copyButtonSuccessIcon_L0B6"><path fill="currentColor" d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"></path></svg></span></button></div></div></div>
<p>By default, we will be <code>root</code> in the container and this is probably not what we expect. Let's change that.</p>
<div class="language-json codeBlockContainer_mQmQ theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockContent_D5yF"><pre tabindex="0" class="prism-code language-json codeBlock_RMoD thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_AclH"><span class="token-line" style="color:#F8F8F2"><span class="token property">"containerUser"</span><span class="token operator">:</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">"podman-desktop"</span><br></span></code></pre><div class="buttonGroup_aaMX"><button type="button" aria-label="Copy code to clipboard" title="Copy" class="clean-btn"><span class="copyButtonIcons_z5j7" aria-hidden="true"><svg viewBox="0 0 24 24" class="copyButtonIcon_FoOz"><path fill="currentColor" d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"></path></svg><svg viewBox="0 0 24 24" class="copyButtonSuccessIcon_L0B6"><path fill="currentColor" d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"></path></svg></span></button></div></div></div>
<p>Some Visual Studio Code extensions are nice to use and we can add them</p>
<div class="language-json codeBlockContainer_mQmQ theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockContent_D5yF"><pre tabindex="0" class="prism-code language-json codeBlock_RMoD thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_AclH"><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token property">"extensions"</span><span class="token operator">:</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">[</span><span class="token string" style="color:rgb(255, 121, 198)">"svelte.svelte-vscode"</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">"bradlc.vscode-tailwindcss"</span><span class="token punctuation" style="color:rgb(248, 248, 242)">]</span><br></span></code></pre><div class="buttonGroup_aaMX"><button type="button" aria-label="Copy code to clipboard" title="Copy" class="clean-btn"><span class="copyButtonIcons_z5j7" aria-hidden="true"><svg viewBox="0 0 24 24" class="copyButtonIcon_FoOz"><path fill="currentColor" d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"></path></svg><svg viewBox="0 0 24 24" class="copyButtonSuccessIcon_L0B6"><path fill="currentColor" d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"></path></svg></span></button></div></div></div>
<p>Then here is the tricky part, how to run our container allowing to run again inside the container some containers with podman.</p>
<p>We specify the arguments to make it possible. It's possible to use <code>--privileged</code> flag but I prefer to list the subset of permissions.
Using <code>--privileged</code> we don't really know what are the privilege that are required while specifying all of them, people are aware of what is granted/denied.</p>
<div class="language-json codeBlockContainer_mQmQ theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockContent_D5yF"><pre tabindex="0" class="prism-code language-json codeBlock_RMoD thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_AclH"><span class="token-line" style="color:#F8F8F2"><span class="token property">"runArgs"</span><span class="token operator">:</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">[</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">"--cap-add=sys_admin"</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">"--security-opt"</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">"seccomp=unconfined"</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">"--device"</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">"/dev/fuse"</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">"--security-opt"</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">"label=disable"</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">"--security-opt"</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">"apparmor=unconfined"</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">]</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><br></span></code></pre><div class="buttonGroup_aaMX"><button type="button" aria-label="Copy code to clipboard" title="Copy" class="clean-btn"><span class="copyButtonIcons_z5j7" aria-hidden="true"><svg viewBox="0 0 24 24" class="copyButtonIcon_FoOz"><path fill="currentColor" d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"></path></svg><svg viewBox="0 0 24 24" class="copyButtonSuccessIcon_L0B6"><path fill="currentColor" d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"></path></svg></span></button></div></div></div>
<p>Source code of Podman Desktop needs to be editable within the DevContainer so it needs to be mounted.</p>
<div class="language-json codeBlockContainer_mQmQ theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockContent_D5yF"><pre tabindex="0" class="prism-code language-json codeBlock_RMoD thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_AclH"><span class="token-line" style="color:#F8F8F2"><span class="token property">"workspaceMount"</span><span class="token operator">:</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">"source=${localWorkspaceFolder},target=/workspace,type=bind"</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token property">"workspaceFolder"</span><span class="token operator">:</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">"/workspace"</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><br></span></code></pre><div class="buttonGroup_aaMX"><button type="button" aria-label="Copy code to clipboard" title="Copy" class="clean-btn"><span class="copyButtonIcons_z5j7" aria-hidden="true"><svg viewBox="0 0 24 24" class="copyButtonIcon_FoOz"><path fill="currentColor" d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"></path></svg><svg viewBox="0 0 24 24" class="copyButtonSuccessIcon_L0B6"><path fill="currentColor" d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"></path></svg></span></button></div></div></div>
<p>Then we need a command to build Podman Desktop.</p>
<p>For that, we use <code>onCreateCommand</code> hook with a custom command</p>
<div class="language-json codeBlockContainer_mQmQ theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockContent_D5yF"><pre tabindex="0" class="prism-code language-json codeBlock_RMoD thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_AclH"><span class="token-line" style="color:#F8F8F2"><span class="token property">"onCreateCommand"</span><span class="token operator">:</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">"${containerWorkspaceFolder}/.devcontainer/onCreateCommand.sh"</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><br></span></code></pre><div class="buttonGroup_aaMX"><button type="button" aria-label="Copy code to clipboard" title="Copy" class="clean-btn"><span class="copyButtonIcons_z5j7" aria-hidden="true"><svg viewBox="0 0 24 24" class="copyButtonIcon_FoOz"><path fill="currentColor" d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"></path></svg><svg viewBox="0 0 24 24" class="copyButtonSuccessIcon_L0B6"><path fill="currentColor" d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"></path></svg></span></button></div></div></div>
<p>and in the <code>.devcontainer</code> folder the <code>onCreateCommand.sh</code> script is the following</p>
<div class="language-shell codeBlockContainer_mQmQ theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockContent_D5yF"><pre tabindex="0" class="prism-code language-shell codeBlock_RMoD thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_AclH"><span class="token-line" style="color:#F8F8F2"><span class="token shebang important">#!/bin/sh</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token function" style="color:rgb(80, 250, 123)">yarn</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token assign-left variable" style="color:rgb(189, 147, 249);font-style:italic">MODE</span><span class="token operator">=</span><span class="token plain">production </span><span class="token function" style="color:rgb(80, 250, 123)">yarn</span><span class="token plain"> run build </span><span class="token operator">&amp;&amp;</span><span class="token plain"> </span><span class="token function" style="color:rgb(80, 250, 123)">yarn</span><span class="token plain"> run electron-builder build </span><span class="token parameter variable" style="color:rgb(189, 147, 249);font-style:italic">--linux</span><span class="token plain"> </span><span class="token parameter variable" style="color:rgb(189, 147, 249);font-style:italic">--dir</span><span class="token plain"> </span><span class="token parameter variable" style="color:rgb(189, 147, 249);font-style:italic">--config</span><span class="token plain"> .electron-builder.config.cjs</span><br></span></code></pre><div class="buttonGroup_aaMX"><button type="button" aria-label="Copy code to clipboard" title="Copy" class="clean-btn"><span class="copyButtonIcons_z5j7" aria-hidden="true"><svg viewBox="0 0 24 24" class="copyButtonIcon_FoOz"><path fill="currentColor" d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"></path></svg><svg viewBox="0 0 24 24" class="copyButtonSuccessIcon_L0B6"><path fill="currentColor" d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"></path></svg></span></button></div></div></div>
<p>Two instructions:</p>
<ol>
<li>Fetch all Node.js dependencies.</li>
<li>build Podman Desktop in the <code>dist</code> folder using <code>Linux</code> as target Operating System.</li>
</ol>
<p>After the start of the container, how to launch Podman Desktop, the website and VNC, etc ?</p>
<p>Just use <code>postStartCommand</code> hook.</p>
<div class="language-json codeBlockContainer_mQmQ theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockContent_D5yF"><pre tabindex="0" class="prism-code language-json codeBlock_RMoD thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_AclH"><span class="token-line" style="color:#F8F8F2"><span class="token property">"postStartCommand"</span><span class="token operator">:</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">"${containerWorkspaceFolder}/.devcontainer/postStartCommand.sh"</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><br></span></code></pre><div class="buttonGroup_aaMX"><button type="button" aria-label="Copy code to clipboard" title="Copy" class="clean-btn"><span class="copyButtonIcons_z5j7" aria-hidden="true"><svg viewBox="0 0 24 24" class="copyButtonIcon_FoOz"><path fill="currentColor" d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"></path></svg><svg viewBox="0 0 24 24" class="copyButtonSuccessIcon_L0B6"><path fill="currentColor" d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"></path></svg></span></button></div></div></div>
<p>and in the <code>.devcontainer</code> folder the <code>postStartCommand.sh</code> script is the following:</p>
<div class="language-shell codeBlockContainer_mQmQ theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockContent_D5yF"><pre tabindex="0" class="prism-code language-shell codeBlock_RMoD thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_AclH"><span class="token-line" style="color:#F8F8F2"><span class="token shebang important">#!/bin/sh</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token comment" style="color:rgb(98, 114, 164)"># Start all services</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">/usr/bin/supervisord </span><span class="token parameter variable" style="color:rgb(189, 147, 249);font-style:italic">-c</span><span class="token plain"> /etc/supervisord.conf </span><span class="token operator">&amp;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token comment" style="color:rgb(98, 114, 164)"># wait X server to be ready or after 2mn exit</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token builtin class-name" style="color:rgb(189, 147, 249)">echo</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">"Waiting for X server to be ready"</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token function" style="color:rgb(80, 250, 123)">timeout</span><span class="token plain"> </span><span class="token number">120</span><span class="token plain"> </span><span class="token function" style="color:rgb(80, 250, 123)">bash</span><span class="token plain"> </span><span class="token parameter variable" style="color:rgb(189, 147, 249);font-style:italic">-c</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">'until xdpyinfo -display :0 &amp;&gt; /dev/null; do printf "."; sleep 1; done'</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token comment" style="color:rgb(98, 114, 164)"># launch podman desktop</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token builtin class-name" style="color:rgb(189, 147, 249)">echo</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">"Launching Podman Desktop"</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token builtin class-name" style="color:rgb(189, 147, 249)">cd</span><span class="token plain"> dist/linux-unpacked/</span><span class="token operator">&amp;&amp;</span><span class="token plain"> ./podman-desktop </span><span class="token operator">&amp;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token comment" style="color:rgb(98, 114, 164)"># Launch the 9000 redirect after 20 seconds</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token function" style="color:rgb(80, 250, 123)">sleep</span><span class="token plain"> </span><span class="token number">20</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain">websockify </span><span class="token parameter variable" style="color:rgb(189, 147, 249);font-style:italic">--web</span><span class="token operator">=</span><span class="token plain">/usr/share/novnc localhost:9000 localhost:5900 </span><span class="token operator">&amp;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token comment" style="color:rgb(98, 114, 164)"># launch the website rendering</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token builtin class-name" style="color:rgb(189, 147, 249)">echo</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">"Launching Website"</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token builtin class-name" style="color:rgb(189, 147, 249)">cd</span><span class="token plain"> website </span><span class="token operator">&amp;&amp;</span><span class="token plain"> </span><span class="token function" style="color:rgb(80, 250, 123)">yarn</span><span class="token plain"> start</span><br></span></code></pre><div class="buttonGroup_aaMX"><button type="button" aria-label="Copy code to clipboard" title="Copy" class="clean-btn"><span class="copyButtonIcons_z5j7" aria-hidden="true"><svg viewBox="0 0 24 24" class="copyButtonIcon_FoOz"><path fill="currentColor" d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"></path></svg><svg viewBox="0 0 24 24" class="copyButtonSuccessIcon_L0B6"><path fill="currentColor" d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"></path></svg></span></button></div></div></div>
<p>It starts VNC and noVNC, start precompiled Podman Desktop and start the documentation rendering.</p>
<p>It is not launching the Watch mode/development mode of Podman Desktop as it requires a container having more than 8GB of memory.</p>
<p>Picking up a larger instance with for example 16GB, it's possible to use development mode.</p>
<p>Of course, to make VNC happy, we need to specify the <code>DISPLAY</code> environment variable.</p>
<div class="language-json codeBlockContainer_mQmQ theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockContent_D5yF"><pre tabindex="0" class="prism-code language-json codeBlock_RMoD thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_AclH"><span class="token-line" style="color:#F8F8F2"><span class="token property">"remoteEnv"</span><span class="token operator">:</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token property">"DISPLAY"</span><span class="token operator">:</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">":0"</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><br></span></code></pre><div class="buttonGroup_aaMX"><button type="button" aria-label="Copy code to clipboard" title="Copy" class="clean-btn"><span class="copyButtonIcons_z5j7" aria-hidden="true"><svg viewBox="0 0 24 24" class="copyButtonIcon_FoOz"><path fill="currentColor" d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"></path></svg><svg viewBox="0 0 24 24" class="copyButtonSuccessIcon_L0B6"><path fill="currentColor" d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"></path></svg></span></button></div></div></div>
<p>When the DevContainer is fully available, we want to have a way to quickly open the <code>Website rendering URL</code> and <code>noVNC</code></p>
<p>Let's tweak the <code>devcontainer.json</code> file by adding the <code>portsAttributes</code> section</p>
<div class="language-json codeBlockContainer_mQmQ theme-code-block" style="--prism-color:#F8F8F2;--prism-background-color:#282A36"><div class="codeBlockContent_D5yF"><pre tabindex="0" class="prism-code language-json codeBlock_RMoD thin-scrollbar" style="color:#F8F8F2;background-color:#282A36"><code class="codeBlockLines_AclH"><span class="token-line" style="color:#F8F8F2"><span class="token property">"portsAttributes"</span><span class="token operator">:</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token property">"9000"</span><span class="token operator">:</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token property">"label"</span><span class="token operator">:</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">"vnc"</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token property">"onAutoForward"</span><span class="token operator">:</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">"openPreview"</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token property">"3000"</span><span class="token operator">:</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token property">"label"</span><span class="token operator">:</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">"website"</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><span class="token plain"></span><br></span><span class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span><br></span></code></pre><div class="buttonGroup_aaMX"><button type="button" aria-label="Copy code to clipboard" title="Copy" class="clean-btn"><span class="copyButtonIcons_z5j7" aria-hidden="true"><svg viewBox="0 0 24 24" class="copyButtonIcon_FoOz"><path fill="currentColor" d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"></path></svg><svg viewBox="0 0 24 24" class="copyButtonSuccessIcon_L0B6"><path fill="currentColor" d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"></path></svg></span></button></div></div></div>
<p>After all post-creation steps, the <code>Preview</code> browser inside the VS Code editor will open a window to VNC. And another port (<code>3000</code>) is flagged for the website.</p>
<h2 class="anchor anchorWithStickyNavbar_JmGV" id="using-the-devcontainerjson-on-github-codespace">Using the DevContainer.json on Github Codespace<a href="https://podman-desktop.io/blog/develop-using-devcontainer#using-the-devcontainerjson-on-github-codespace" class="hash-link" aria-label="Direct link to Using the DevContainer.json on Github Codespace" title="Direct link to Using the DevContainer.json on Github Codespace"></a></h2>
<p>As a user, opening a workspace with all what we configured is done using a single click.</p>
<p>Go to <a href="https://github.com/containers/podman-desktop" target="_blank" rel="noopener noreferrer">https://github.com/containers/podman-desktop</a> then click on the <code>&lt; &gt; Code</code> dropdown and click on <code>Create codespace on main</code> button.</p>
<p><img loading="lazy" alt="Open Codespace" src="https://podman-desktop.io/assets/images/codespaces-click-repository-22eb251ecc45a2b29952fe5983e16238.png" width="1240" height="617" class="img_SS3x"></p>
<p>Once you click on the button, the codespace is setting up:</p>
<p><img loading="lazy" alt="Preparing Codespace" src="https://podman-desktop.io/assets/images/codespaces-preparing-codespace-3121417aa9d8947b8f5566bf39478961.png" width="754" height="587" class="img_SS3x"></p>
<p>After few minutes, as there is not yet <a href="https://docs.github.com/en/codespaces/prebuilding-your-codespaces/about-github-codespaces-prebuilds" target="_blank" rel="noopener noreferrer">prebuilt codespaces</a>, the codespace is opening.</p>
<p>The simple Browser displays the noVNC window:
<img loading="lazy" alt="Opening Codespace" src="https://podman-desktop.io/assets/images/codespaces-open-novnc-ec3f30d836eb7af5750498a833d37184.png" width="2051" height="1066" class="img_SS3x"></p>
<p>Click on the connect button. Then on the terminal you can enter <code>podman run quay.io/podman/hello</code> and the container is detected in Podman Desktop.
<img loading="lazy" alt="Testing Codespace" src="https://podman-desktop.io/assets/images/codespaces-testing-podman-desktop-3210aa766f273a52253d27cb4e7ef782.png" width="2051" height="1066" class="img_SS3x"></p>
<p>It's also possible using the port widget to get on <code>3000</code> port by clicking on the world icon a preview of the website in another tab. Changing source code of the website will refresh the content of the window.</p>
<p>Depending on the usecase, it's also possible to open documentation in the preview browser.</p>
<p><img loading="lazy" alt="Edit website Codespace" src="https://podman-desktop.io/assets/images/codespaces-edit-website-d1f2a645f97209e453bc72cadafa0b54.png" width="2051" height="1066" class="img_SS3x"></p>
<h2 class="anchor anchorWithStickyNavbar_JmGV" id="conclusion">Conclusion<a href="https://podman-desktop.io/blog/develop-using-devcontainer#conclusion" class="hash-link" aria-label="Direct link to Conclusion" title="Direct link to Conclusion"></a></h2>
<p>The DevContainer image for Podman Desktop is recent so it'll probably evolve over time by adding new capabilities but it allows you to easily build/run/experiment and <strong>contribute</strong> to the tool or the website.</p>]]></content:encoded>
<category>podman-desktop</category>
<category>devcontainer</category>
<category>codespaces</category>
</item>
</channel>
</rss>