From e0fb9b305b877070cd1815b27a91395785047a7d Mon Sep 17 00:00:00 2001 From: Stephen Day Date: Wed, 11 Dec 2024 21:33:30 -0800 Subject: [PATCH 1/5] harmonia: one more pass for bind volumes (#21582) After some discussion with the team, we've added a few more conditions. Co-authored-by: Nick Sieger Co-authored-by: David Karlsson <35727626+dvdksn@users.noreply.github.com> --- content/manuals/harmonia/_index.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/content/manuals/harmonia/_index.md b/content/manuals/harmonia/_index.md index ba987542bc84..b3a6b88d5f45 100644 --- a/content/manuals/harmonia/_index.md +++ b/content/manuals/harmonia/_index.md @@ -263,7 +263,9 @@ Run `docker harmonia doctor` to print helpful troubleshooting information. - KinD does not run on Project Harmonia due to some hard-coded assumptions to ensure it's running in a privileged container. K3d is a good alternative. - Containers cannot access host through DNS `host.docker.internal`. - File binds (non-directory binds) are currently static, meaning changes will not be reflected until the container is restarted. This also affects Compose configs and secrets directives. -- Bind mounts, such as `-v /localpath:/incontainer` in the `docker run` command, are not supported without using a file-sync. +- Bind _mounts_, such as `-v /localpath:/incontainer` in the `docker run` command, require creating a file-sync. +- Creating a [synchronized file share](/manuals/desktop/features/synchronized-file-sharing.md) for a directory with a large amount of may take extra time to sync and become ready for use in a container. +- Bind _volumes_, such as those created with `docker volume create --driver local --opt type=none --opt o=bind --opt device=/some/host/path myvolname` or via the compose equivalent, are not supported. - Port-forwarding for UDP is not supported. - Docker Compose projects relying on `watch` in `sync` mode are not working with the `tar` synchronizer. Configure it to use `docker cp` instead, disable tar sync by setting `COMPOSE_EXPERIMENTAL_WATCH_TAR=0` in your environment. - Some Docker Engine features that let you access the underlying host, such as `--pid=host`, `--network=host`, and `--ipc=host`, are currently disabled. From d494995646c865f95b656be8986d1ddebdde8f3e Mon Sep 17 00:00:00 2001 From: Ragan Date: Thu, 12 Dec 2024 06:27:16 -0600 Subject: [PATCH 2/5] Update _index.md about switching container mode (#21614) ## Description Docker desktop was installed by an automated system on my device and when I went to change the WSL Integration settings, the panel was not available. The app had been configured to use "Windows containers mode" and I had to switch it to "Linux containers mode" to be able to see the panel. I have added text to help others who may face the same problem. ## Related issues or tickets ## Reviews - [ ] Technical review - [ ] Editorial review - [ ] Product review --------- Co-authored-by: Allie Sadler <102604716+aevesdocker@users.noreply.github.com> --- content/manuals/desktop/features/wsl/_index.md | 1 + 1 file changed, 1 insertion(+) diff --git a/content/manuals/desktop/features/wsl/_index.md b/content/manuals/desktop/features/wsl/_index.md index 0d53cb15d4aa..882ae9bc065f 100644 --- a/content/manuals/desktop/features/wsl/_index.md +++ b/content/manuals/desktop/features/wsl/_index.md @@ -90,6 +90,7 @@ Docker Desktop does not require any particular Linux distributions to be install ```console $ wsl --set-default ``` + If **WSL integrations** isn't available under **Resources**, Docker may be in Windows container mode. In your taskbar, select the Docker menu and then **Switch to Linux containers**. 3. Select **Apply & Restart**. From 4aaed903a0105afcb6a883e375372bf3a41a3970 Mon Sep 17 00:00:00 2001 From: Sarah Sanders Date: Thu, 12 Dec 2024 07:39:22 -0800 Subject: [PATCH 3/5] docs freshness: choose profile UI flow (#21611) ## Description - The "Choose profile" UI flow is now live in Admin Console, updated all docs UI flows - Just FYI, this is in staging behind feature flag for: DBC and Billing ## Related issues or tickets [ENGDOCS-2356](https://docker.atlassian.net/browse/ENGDOCS-2356) ## Reviews - [ ] Technical review - [ ] Editorial review - [ ] Product review [ENGDOCS-2356]: https://docker.atlassian.net/browse/ENGDOCS-2356?atlOrigin=eyJpIjoiNWRkNTljNzYxNjVmNDY3MDlhMDU5Y2ZhYzA5YTRkZjUiLCJwIjoiZ2l0aHViLWNvbS1KU1cifQ --- content/manuals/accounts/deactivate-user-account.md | 2 +- content/manuals/admin/company/organizations.md | 8 ++++---- content/manuals/admin/company/owners.md | 4 ++-- content/manuals/admin/organization/general-settings.md | 2 +- content/manuals/admin/organization/insights.md | 3 +-- content/manuals/admin/organization/members.md | 6 ++---- .../security/for-admins/provisioning/just-in-time.md | 4 ++-- .../security/for-admins/single-sign-on/configure.md | 2 +- .../manuals/security/for-admins/single-sign-on/connect.md | 4 ++-- .../manuals/security/for-admins/single-sign-on/manage.md | 4 ++-- .../security/for-admins/single-sign-on/troubleshoot.md | 3 +-- layouts/shortcodes/admin-domain-audit.md | 2 +- layouts/shortcodes/admin-sso-config.md | 2 +- layouts/shortcodes/admin-sso-connect.md | 2 +- layouts/shortcodes/admin-sso-management-connections.md | 2 +- layouts/shortcodes/admin-sso-management-orgs.md | 2 +- layouts/shortcodes/admin-sso-management.md | 2 +- layouts/shortcodes/admin-users.html | 2 +- 18 files changed, 26 insertions(+), 30 deletions(-) diff --git a/content/manuals/accounts/deactivate-user-account.md b/content/manuals/accounts/deactivate-user-account.md index 1985a8a3182d..8639c5c43c58 100644 --- a/content/manuals/accounts/deactivate-user-account.md +++ b/content/manuals/accounts/deactivate-user-account.md @@ -18,7 +18,7 @@ Before deactivating your Docker account, ensure you meet the following requireme - For owners, you must leave your organization or company before deactivating your Docker account. To do this: 1. Sign in to the [Docker Admin Console](https://app.docker.com/admin). - 2. Select the organization you need to leave from the top-left drop-down menu. + 2. Select the organization you need to leave from the **Choose profile** page. 3. Find your username in the **Members** tab. 4. Select the **More options** menu and then select **Leave organization**. diff --git a/content/manuals/admin/company/organizations.md b/content/manuals/admin/company/organizations.md index 54e1ffe50a4a..d1990cd79c93 100644 --- a/content/manuals/admin/company/organizations.md +++ b/content/manuals/admin/company/organizations.md @@ -11,7 +11,7 @@ You can manage the organizations in a company in the Docker Admin Console. ## View all organizations 1. Sign in to the [Admin Console](https://admin.docker.com). -2. In the left navigation, select your company in the drop-down menu. +2. Select your company on the **Choose profile** page. 3. Under **Organizations**, select **Overview**. ## Add seats to an organization @@ -19,7 +19,7 @@ You can manage the organizations in a company in the Docker Admin Console. When you have a [self-serve](../../subscription/details.md#self-serve) subscription that has no pending subscription changes, you can add seats using the following steps. 1. Sign in to the [Admin Console](https://admin.docker.com). -2. In the left navigation, select your company in the drop-down menu. +2. Select your company on the **Choose profile** page. 3. Under **Organizations**, select **Overview**. 4. Select the action icon in the organization's card, and then select **Get more seats**. @@ -36,7 +36,7 @@ There is no limit to the number of organizations you can have under a company la > Once you add an organization to a company, you can't remove it from the company. 1. Sign in to the [Admin Console](https://admin.docker.com). -2. In the left navigation, select your company in the drop-down menu. +2. Select your company on the **Choose profile** page. 3. Select **Add organization**. 4. Choose the organization you want to add from the drop-down menu. 5. Select **Add organization** to confirm. @@ -44,7 +44,7 @@ There is no limit to the number of organizations you can have under a company la ## Manage an organization 1. Sign in to the [Admin Console](https://admin.docker.com). -2. In the left navigation, select your company in the drop-down menu. +2. Select your company on the **Choose profile** page. 3. Select the organization that you want to manage. For more details about managing an organization, see [Organization administration](../organization/_index.md). diff --git a/content/manuals/admin/company/owners.md b/content/manuals/admin/company/owners.md index fdacaa77c8f1..ba028a727aad 100644 --- a/content/manuals/admin/company/owners.md +++ b/content/manuals/admin/company/owners.md @@ -18,7 +18,7 @@ member in an organization, they don't occupy a seat. ## Add a company owner 1. Sign in to the [Admin Console](https://admin.docker.com). -2. In the left navigation, select your company in the drop-down menu. +2. Select your company on the **Choose profile** page. 3. Select **Company owners**. 4. Select **Add owner**. 5. Specify the user's Docker ID to search for the user. @@ -27,7 +27,7 @@ member in an organization, they don't occupy a seat. ## Remove a company owner 1. Sign in to the [Admin Console](https://admin.docker.com). -2. In the left navigation, select your company in the drop-down menu. +2. Select your company on the **Choose profile** page. 3. Select **Company owners**. 4. Select the **Action** icon in the row of the company owner that your want to remove. 5. Select **Remove as company owner**. diff --git a/content/manuals/admin/organization/general-settings.md b/content/manuals/admin/organization/general-settings.md index 9b26bc8b0ef4..9b5eb7d31e08 100644 --- a/content/manuals/admin/organization/general-settings.md +++ b/content/manuals/admin/organization/general-settings.md @@ -23,7 +23,7 @@ This information includes: To edit this information: 1. Sign in to the [Admin Console](https://admin.docker.com). -2. In the left navigation, select your organization in the drop-down menu. +2. Select your company on the **Choose profile** page. 3. Under **Organization settings**, select **General**. 4. Specify the organization information and select **Save**. diff --git a/content/manuals/admin/organization/insights.md b/content/manuals/admin/organization/insights.md index 5b63d23cf5ab..159a5020ea04 100644 --- a/content/manuals/admin/organization/insights.md +++ b/content/manuals/admin/organization/insights.md @@ -28,8 +28,7 @@ Key benefits include: 1. Go to the [Admin Console](https://app.docker.com/admin/) and sign in to an account that is an organization owner. -2. In the Admin Console, select your organization from the drop-down in the left - navigation. +2. Select your company on the **Choose profile** page. 3. Select **Insights**. 4. On the **Insights** page, select the period of time for the data. diff --git a/content/manuals/admin/organization/members.md b/content/manuals/admin/organization/members.md index 25d78ce890a4..6042f7d34374 100644 --- a/content/manuals/admin/organization/members.md +++ b/content/manuals/admin/organization/members.md @@ -70,8 +70,7 @@ To resend an invitation from Docker Hub: To resend an invitation from the Admin Console: -1. Open the [Admin Console](https://app.docker.com/admin) and select your organization from -top-left drop-down menu. +1. In the [Admin Console](https://app.docker.com/admin), select your organization. 2. Select **Members**. 3. Select the **action menu** next to the invitee and select **Resend invitation**. 4. Select **Invite** to confirm. @@ -98,8 +97,7 @@ To remove a member's invitation from Docker Hub: To remove an invitation from the Admin Console: -1. Open the [Admin Console](https://app.docker.com/admin) and select your organization from -top-left drop-down menu. +1. In the [Admin Console](https://app.docker.com/admin), select your organization. 2. Select **Members**. 3. Select the **action menu** next to the invitee and select **Remove invitee**. 4. Select **Remove** to confirm. diff --git a/content/manuals/security/for-admins/provisioning/just-in-time.md b/content/manuals/security/for-admins/provisioning/just-in-time.md index d412f8b6b7e8..dc006697753c 100644 --- a/content/manuals/security/for-admins/provisioning/just-in-time.md +++ b/content/manuals/security/for-admins/provisioning/just-in-time.md @@ -63,7 +63,7 @@ You may want to disable JIT provisioning for reasons such as the following: Users are provisioned with JIT by default. If you enable SCIM, you can disable JIT: -1. Sign in to the [Admin Console](https://app.docker.com/). -2. Select your organization or company in the left-hand navigation drop-down, and then select **SSO and SCIM**. +1. In the [Admin Console](https://app.docker.com/admin), select your organization. +2. Select **SSO and SCIM**. 3. In the SSO connections table, select the **Action** icon and then **Disable JIT provisioning**. 4. Select **Disable** to confirm. diff --git a/content/manuals/security/for-admins/single-sign-on/configure.md b/content/manuals/security/for-admins/single-sign-on/configure.md index a5bda5c29b55..ee2905fbc064 100644 --- a/content/manuals/security/for-admins/single-sign-on/configure.md +++ b/content/manuals/security/for-admins/single-sign-on/configure.md @@ -22,7 +22,7 @@ Get started creating a single sign-on (SSO) connection for your organization or {{< include "admin-early-access.md" >}} 1. Sign in to the [Admin Console](https://admin.docker.com/). -2. Select your organization or company from the left-hand drop-down menu. Note that when an organization is part of a company, you must select the company and configure the domain for the organization at the company level. +2. Select your organization or company from the **Choose profile** page. Note that when an organization is part of a company, you must select the company and configure the domain for the organization at the company level. 3. Under **Security and access**, select **Domain management**. 4. Select **Add a domain**. 5. Enter your domain in the text box and select **Add domain**. diff --git a/content/manuals/security/for-admins/single-sign-on/connect.md b/content/manuals/security/for-admins/single-sign-on/connect.md index 1c95c487975a..0a698b9653a9 100644 --- a/content/manuals/security/for-admins/single-sign-on/connect.md +++ b/content/manuals/security/for-admins/single-sign-on/connect.md @@ -31,7 +31,7 @@ Make sure you have completed the following before you begin: {{< include "admin-early-access.md" >}} 1. Sign in to the [Admin Console](https://admin.docker.com/). -2. Select your organization or company from the left-hand drop-down menu. Note that when an organization is part of a company, you must select the company and configure the domain for the organization at the company level. +2. Select your organization or company from the **Choose profile** page. Note that when an organization is part of a company, you must select the company and configure the domain for the organization at the company level. 3. Under Security and access, select **SSO and SCIM**. 4. Select **Create Connection** and provide a name for the connection. 5. Select an authentication method, **SAML** or **Azure AD (OIDC)**. @@ -201,7 +201,7 @@ You can also test your SSO connection through the command-line interface (CLI). Enforcing SSO requires users to use SSO when signing into Docker. This centralizes authentication and enforces policies set by the IdP. 1. Sign in to the [Admin Console](https://admin.docker.com/). -2. Select your organization or company from the left-hand drop-down menu. Note that when an organization is part of a company, you must select the company and configure the domain for the organization at the company level. +2. Select your organization or company from the **Choose profile** page. Note that when an organization is part of a company, you must select the company and configure the domain for the organization at the company level. 3. Under Security and access, select **SSO and SCIM**. 4. In the SSO connections table, select the **Action** icon and then **Enable enforcement**. When SSO is enforced, your users are unable to modify their email address and password, convert a user account to an organization, or set up 2FA through Docker Hub. If you want to use 2FA, you must enable 2FA through your IdP. 5. Continue with the on-screen instructions and verify you've completed all tasks. diff --git a/content/manuals/security/for-admins/single-sign-on/manage.md b/content/manuals/security/for-admins/single-sign-on/manage.md index 26455b24794f..70b4af79abe0 100644 --- a/content/manuals/security/for-admins/single-sign-on/manage.md +++ b/content/manuals/security/for-admins/single-sign-on/manage.md @@ -71,7 +71,7 @@ aliases: To add a guest that isn't verified through your IdP: 1. Sign in to the [Admin Console](https://app.docker.com/admin). -2. Select **Organizations**, your organization, and then **Members**. +2. Select your organization or company from the **Choose profile** page, then select **Members**. 3. Select **Invite**. 4. Follow the on-screen instructions to invite the user. @@ -80,7 +80,7 @@ To add a guest that isn't verified through your IdP: To remove a user: 1. Sign in to [Admin Console](https://app.docker.com/admin). -2. Select **Organizations**, your organization, and then **Members**. +2. Select your organization or company from the **Choose profile** page, then select **Members**. 3. Select the action icon next to a user’s name, and then select **Remove member**, if you're an organization, or **Remove user**, if you're a company. 4. Follow the on-screen instructions to remove the user. diff --git a/content/manuals/security/for-admins/single-sign-on/troubleshoot.md b/content/manuals/security/for-admins/single-sign-on/troubleshoot.md index 651bf9d8e379..e5585e36a8a7 100644 --- a/content/manuals/security/for-admins/single-sign-on/troubleshoot.md +++ b/content/manuals/security/for-admins/single-sign-on/troubleshoot.md @@ -16,8 +16,7 @@ their service. ## View SSO and SCIM error logs 1. Sign in to the [Admin Console](https://app.docker.com/admin/). -2. Select your organization or company in the left navigation drop-down menu, - and then select **SSO and SCIM**. +2. Select your organization or company from the **Choose profile** page, and then select **SSO and SCIM**. > [!NOTE] > diff --git a/layouts/shortcodes/admin-domain-audit.md b/layouts/shortcodes/admin-domain-audit.md index d43dd82c75e9..983555f834f8 100644 --- a/layouts/shortcodes/admin-domain-audit.md +++ b/layouts/shortcodes/admin-domain-audit.md @@ -5,7 +5,7 @@ {{ if eq (.Get "product") "admin" }} {{ $product_link = "the [Admin Console](https://admin.docker.com)" }} - {{ $domain_navigation = "Select your organization in the left navigation drop-down menu, and then select **Domain management**." }} + {{ $domain_navigation = "Select your organization on the **Choose profile** page, and then select **Domain management**." }} {{ $sso_link = "[SSO](/security/for-admins/single-sign-on/)" }} {{ $scim_link = "[SCIM](/security/for-admins/provisioning/scim/)" }} {{ end }} diff --git a/layouts/shortcodes/admin-sso-config.md b/layouts/shortcodes/admin-sso-config.md index 1c959eeadc4b..3a4a0d38b6f4 100644 --- a/layouts/shortcodes/admin-sso-config.md +++ b/layouts/shortcodes/admin-sso-config.md @@ -3,7 +3,7 @@ {{ if eq (.Get "product") "admin" }} {{ $product_link = "the [Admin Console](https://admin.docker.com)" }} - {{ $sso_navigation = "Select your organization or company in the left navigation drop-down menu, and then select **SSO and SCIM**. Note that when an organization is part of a company, you must select the company and configure SSO for that organization at the company level. Each organization can have its own SSO configuration and domain, but it must be configured at the company level." }} + {{ $sso_navigation = "Select your organization or company from the **Choose profile** page, and then select **SSO and SCIM**. Note that when an organization is part of a company, you must select the company and configure SSO for that organization at the company level. Each organization can have its own SSO configuration and domain, but it must be configured at the company level." }} {{ end }} > [!IMPORTANT] diff --git a/layouts/shortcodes/admin-sso-connect.md b/layouts/shortcodes/admin-sso-connect.md index e5663366a7f5..4e045bd904fe 100644 --- a/layouts/shortcodes/admin-sso-connect.md +++ b/layouts/shortcodes/admin-sso-connect.md @@ -3,7 +3,7 @@ {{ if eq (.Get "product") "admin" }} {{ $product_link = "the [Admin Console](https://admin.docker.com)" }} - {{ $sso_navigation = "Select your organization or company in the left navigation drop-down menu, and then select **SSO and SCIM**. Note that when an organization is part of a company, you must select the company and configure SSO for that organization at the company level. Each organization can have its own SSO configuration and domain, but it must be configured at the company level." }} + {{ $sso_navigation = "Select your organization or company from the **Choose profile** page, and then select **SSO and SCIM**. Note that when an organization is part of a company, you must select the company and configure SSO for that organization at the company level. Each organization can have its own SSO configuration and domain, but it must be configured at the company level." }} {{ end }} 1. In {{ $product_link }}, select the verified domains you want to apply the connection to. diff --git a/layouts/shortcodes/admin-sso-management-connections.md b/layouts/shortcodes/admin-sso-management-connections.md index fe185d858186..ab51525e9949 100644 --- a/layouts/shortcodes/admin-sso-management-connections.md +++ b/layouts/shortcodes/admin-sso-management-connections.md @@ -3,7 +3,7 @@ {{ if eq (.Get "product") "admin" }} {{ $product_link = "the [Admin Console](https://app.docker.com/admin)" }} - {{ $sso_navigation = "Select your organization or company in the left navigation drop-down menu, and then select **SSO and SCIM**. Note that when an organization is part of a company, you must select the company and configure SSO for that organization at the company level. Each organization can have its own SSO configuration and domain, but it must be configured at the company level." }} + {{ $sso_navigation = "Select your organization or company from the Choose proifle page, and then select **SSO and SCIM**. Note that when an organization is part of a company, you must select the company and configure SSO for that organization at the company level. Each organization can have its own SSO configuration and domain, but it must be configured at the company level." }} {{ end }} ### Edit a connection diff --git a/layouts/shortcodes/admin-sso-management-orgs.md b/layouts/shortcodes/admin-sso-management-orgs.md index db97b8b12d4a..300c35911082 100644 --- a/layouts/shortcodes/admin-sso-management-orgs.md +++ b/layouts/shortcodes/admin-sso-management-orgs.md @@ -2,7 +2,7 @@ {{ $sso_navigation := "Select **Organizations**, your company, and then **Settings**." }} {{ if eq (.Get "product") "admin" }} {{ $product_link = "the [Admin Console](https://app.docker.com/admin)" }} - {{ $sso_navigation = "Select your company in the left navigation drop-down menu, and then select **SSO and SCIM**." }} + {{ $sso_navigation = "Select your company from the **Choose profile** page, and then select **SSO and SCIM**." }} {{ end }} ### Connect an organization diff --git a/layouts/shortcodes/admin-sso-management.md b/layouts/shortcodes/admin-sso-management.md index a61db8256c48..054c8419a95e 100644 --- a/layouts/shortcodes/admin-sso-management.md +++ b/layouts/shortcodes/admin-sso-management.md @@ -3,7 +3,7 @@ {{ if eq (.Get "product") "admin" }} {{ $product_link = "the [Admin Console](https://app.docker.com/admin)" }} - {{ $sso_navigation = "Select your organization or company in the left navigation drop-down menu, and then select **SSO and SCIM**." }} + {{ $sso_navigation = "Select your organization or company from the **Choose profile** page, and then select **SSO and SCIM**." }} {{ end }} ### Remove a domain from an SSO connection diff --git a/layouts/shortcodes/admin-users.html b/layouts/shortcodes/admin-users.html index 1594d9dfd0be..6f7bbae8c2e7 100644 --- a/layouts/shortcodes/admin-users.html +++ b/layouts/shortcodes/admin-users.html @@ -17,7 +17,7 @@ {{ if eq (.Get "product") "admin" }} {{ $invite_button = "**Invite**" }} {{ $export_button = "the **Action** icon and then select **Export users as CSV**" }} -{{ $member_navigation = "Select your organization in the left navigation drop-down menu, and then select **Members**." }} +{{ $member_navigation = "Select your organization from the **Choose profile** page, and then select **Members**." }} {{ $remove_button = "**Remove member**" }} {{ $product_link = "the [Admin Console](https://admin.docker.com)" }} {{ $role_mapping_link = "[SCIM for role mapping](/security/for-admins/provisioning/scim/)" }} From f921f3afa27527cb5cfe175abab592018e711063 Mon Sep 17 00:00:00 2001 From: Lorena Rangel Date: Thu, 12 Dec 2024 16:54:09 +0100 Subject: [PATCH 4/5] Release notes 4.37.0 (#21545) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ## Description Docker Desktop 4.37.0 release notes, adn added an extra commit to ignore `.idea` folder 🙈 --------- Signed-off-by: Lorena Rangel Co-authored-by: Allie Sadler <102604716+aevesdocker@users.noreply.github.com> --- content/manuals/desktop/release-notes.md | 43 ++++++++++++++++++++++++ 1 file changed, 43 insertions(+) diff --git a/content/manuals/desktop/release-notes.md b/content/manuals/desktop/release-notes.md index 7d029ae60737..e905db733007 100644 --- a/content/manuals/desktop/release-notes.md +++ b/content/manuals/desktop/release-notes.md @@ -23,6 +23,49 @@ Docker Desktop versions older than 6 months from the latest release are not avai Take a look at the [Docker Public Roadmap](https://github.com/orgs/docker/projects/51/views/1?filterQuery=) to see what's coming next. +## 4.37.0 + +{{< release-date date="2024-12-12" >}} + +{{< desktop-install-v2 all=true beta_win_arm=true version="4.37.0" build_path="/178034/" >}} + +### New + +- You can now perform key operations such as starting, stopping, restarting, and checking the status of Docker Desktop directly from the command line. +- The AI Catalog in Docker Hub is available directly through Docker Desktop. + +### Upgrades + +- [Docker Buildx v0.19.2](https://github.com/docker/buildx/releases/tag/v0.19.2) +- [Docker Compose v2.31.0](https://github.com/docker/compose/releases/tag/v2.31.0) +- [Docker Engine v27.4.0](https://docs.docker.com/engine/release-notes/27/#2740) +- [Docker Scout CLI v1.15.1](https://github.com/docker/scout-cli/releases/tag/v1.15.1) +- [NVIDIA Container Toolkit v1.17.2](https://github.com/NVIDIA/nvidia-container-toolkit/releases/tag/v1.17.2) + +### Bug fixes and enhancements + +#### For all platforms + +- The default disk usage limit for Docker Engine in new installations is now 1TB. +- Fixed an issue where containers could not establish loopback `AF_VSOCK` connections. +- Fixed a bug where resetting default settings would also reset the CLI context. +- Fixed a bug where the Docker Desktop Dashboard would get out of sync with the Docker daemon after restarting the engine while in Resource Saver mode (Windows with WSL2 backend only) or after switching engines (macOS). +- Fixed a bug where Resource Saver mode would fail to re-engage after restarting the engine while in Resource Saver mode. + +#### For Mac + +- Fixed a bug that would create certain user directories with root permission when running the uninstaller binary twice with `sudo`. +- Fixed a bug where the in-app update would fail if Docker Desktop was installed by a non-admin user or if the current user was previously an administrator. Fixes [docker/for-mac#7403](https://github.com/docker/for-mac/issues/7403) and [docker/for-mac#6920](https://github.com/docker/for-mac/issues/6920). + +#### For Windows + +- Added support for Windows on ARM using WSL 2 version 2.3.24 and later to single distribution mode on WSL 2. +- Fixed an issue where Docker Desktop would fail to start. Fixes [docker/for-win#14453](https://github.com/docker/for-win/issues/14453) + +### Known issues + +- Kubernetes cluster may not start if **Registry Access Manager** is enabled. As a workaround, add `registry.k8s.io` and `-docker.pkg.dev` to **Registry Access Management** policies. + ## 4.36.0 {{< release-date date="2024-11-18" >}} From b8a770ee4c78738698edbac6bd925ecd546881bf Mon Sep 17 00:00:00 2001 From: Craig Osterhout <103533812+craig-osterhout@users.noreply.github.com> Date: Thu, 12 Dec 2024 07:54:21 -0800 Subject: [PATCH 5/5] desktop: add docker hub view (#21581) ## Description Added Docker Hub view in Docker Desktop for 4.37 - Added a blurb in the Docker Desktop manual to provide contextual info about the GUI: [Topic preview](https://deploy-preview-21581--docsdocker.netlify.app/desktop/use-desktop/) - Updated the steps in Hub Quickstart for usage: [Topic preview](https://deploy-preview-21581--docsdocker.netlify.app/docker-hub/quickstart/) - Updated Hub tab name: [Topic preview](https://deploy-preview-21581--docsdocker.netlify.app/desktop/use-desktop/images/) ## Related issues or tickets DAC-827 - [ ] Technical review - [ ] Editorial review - [ ] Product review --------- Signed-off-by: Craig Co-authored-by: David Karlsson <35727626+dvdksn@users.noreply.github.com> --- content/manuals/desktop/images/dashboard.webp | Bin 55394 -> 28318 bytes content/manuals/desktop/use-desktop/_index.md | 4 +- content/manuals/desktop/use-desktop/images.md | 4 +- content/manuals/docker-hub/quickstart.md | 130 ++++++++++++++++-- 4 files changed, 122 insertions(+), 16 deletions(-) diff --git a/content/manuals/desktop/images/dashboard.webp b/content/manuals/desktop/images/dashboard.webp index e76911ae84b6592eae1a260de5390edced20cea4..ac3346c820ca3e43b8f480045d7de663f8fc4143 100644 GIT binary patch literal 28318 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 literal 55394 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 +{{< tab name="Docker Hub" >}} + 1. Navigate to the [Docker Hub Explore page](https://hub.docker.com/explore). - On the Explore page, you can browse by catalog or category, or use the search + On the **Explore** page, you can browse by catalog or category, or use the search to quickly find content. 2. Under **Categories**, select **Web servers**. @@ -48,11 +50,88 @@ To search or browse for content on Docker Hub: to use the image. On the page, you'll also find the `docker pull` command to pull the image. +{{< /tab >}} +{{< tab name="Docker Desktop" >}} + +1. Open the Docker Desktop Dashboard. +2. Select the **Docker Hub** view. + + In the **Docker Hub** view, you can browse by catalog or category, or use the search + to quickly find content. + +3. Leave the search box empty and then select **Search**. + + The search results are shown with additional filters now next to the search box. + +4. Select the search filter icon, and then select **Docker Official Image** and **Web Servers**. +5. In the results, select the **nginx** image. + +{{< /tab >}} +{{< tab name="CLI" >}} + +1. Open a terminal window. + + > [!TIP] + > + > The Docker Desktop Dashboard contains a built-in terminal. At the bottom of + > the Dashboard, select **>_ Terminal** to open it. + +2. In the terminal, run the following command. + + ```console + $ docker search --filter is-official=true nginx + ``` + + Unlike the Docker Hub and Docker Desktop interfaces, you can't browse by + category using the `docker search` command. For more details about the + command, see [docker search](/reference/cli/docker/search/). + +{{< /tab >}} +{{< /tabs >}} + Now that you've found an image, it's time to pull and run it on your device. ## Step 2: Pull and run an image from Docker Hub -1. In your terminal, run the following command to pull and run the Nginx image. +You can run images from Docker Hub using the CLI or Docker Desktop Dashboard. + +{{< tabs >}} +{{< tab name="Docker Desktop" >}} + +1. In the Docker Desktop Dashboard, select the **nginx** image in the **Docker + Hub** view. For more details, see [Step 1: Find an image in Docker Hub's + library](#step-1-find-an-image-in-docker-hubs-library). + +2. On the **nginx** screen, select **Run**. + + If the image doesn't exist on your device, it is automatically pulled from + Docker Hub. Pulling the image may take a few seconds or minutes depending on + your connection. After the image has been pulled, a window appears in Docker + Desktop and you can specify run options. + +3. In the **Host port** option, specify `8080`. +4. Select **Run**. + + The container logs appear after the container starts. + +5. Select the **8080:80** link to open the server, or visit + [https://localhost:8080](https://localhost:8080) in your web browser. + +6. In the Docker Desktop Dashboard, select the **Stop** button to stop the + container. + + +{{< /tab >}} +{{< tab name="CLI" >}} + +1. Open a terminal window. + + > [!TIP] + > + > The Docker Desktop Dashboard contains a built-in terminal. At the bottom of + > the Dashboard, select **>_ Terminal** to open it. + +2. In your terminal, run the following command to pull and run the Nginx image. ```console $ docker run -p 8080:80 --rm nginx @@ -95,22 +174,26 @@ Now that you've found an image, it's time to pull and run it on your device. ... ``` -2. Visit [https://localhost:8080](https://localhost:8080) to view the default +3. Visit [https://localhost:8080](https://localhost:8080) to view the default Nginx page and verify that the container is running. -3. In the terminal, press CTRL+C to stop the container. +4. In the terminal, press Ctrl+C to stop the container. -You've now run a web server without any set up or configuration, all from a -single command. Docker Hub provides instant access to pre-built, ready-to-use -container images, letting you quickly pull and run applications without needing -to install or configure software manually. With Docker Hub's vast library of -images, you can experiment with and deploy applications effortlessly, boosting -productivity and making it easy to try out new tools, set up development -environments, or build on top of existing software. +{{< /tab >}} +{{< /tabs >}} + +You've now run a web server without any set up or configuration. Docker Hub +provides instant access to pre-built, ready-to-use container images, letting you +quickly pull and run applications without needing to install or configure +software manually. With Docker Hub's vast library of images, you can experiment +with and deploy applications effortlessly, boosting productivity and making it +easy to try out new tools, set up development environments, or build on top of +existing software. You can also extend images from Docker Hub, letting you quickly build and customize your own images to suit specific needs. + ## Step 3: Build and push an image to Docker Hub 1. Create a [Dockerfile](/reference/dockerfile.md) to specify your application: @@ -201,6 +284,11 @@ customize your own images to suit specific needs. ## Step 4: View your repository on Docker Hub and explore options +You can view your Docker Hub repositories in the Docker Hub or Docker Desktop interface. + +{{< tabs >}} +{{< tab name="Docker Hub" >}} + 1. Go to [Docker Hub](https://hub.docker.com) and sign in. After signing in, you should be on the **Repositories** page. If not, then go @@ -211,6 +299,22 @@ customize your own images to suit specific needs. After selecting the repository, you should see more details and options for your repository. +{{< /tab >}} +{{< tab name="Docker Desktop" >}} + +1. Sign in to Docker Desktop. +2. Select the **Images** view. +3. Select the **Hub repositories** tab. + + A list of your Docker Hub repositories appears. + +4. Find the **nginx-custom** repository, hover over the row, and then select **View in Hub**. + + Docker Hub opens and you are able to view more details about the image. + +{{< /tab >}} +{{< /tabs >}} + You've now verified that your repository exists on Docker Hub, and you've discovered more options for it. View the next steps to learn more about some of these options.