diff --git a/content/manuals/build/builders/drivers/docker.md b/content/manuals/build/builders/drivers/docker.md index a01fb3161370..6dc028df698f 100644 --- a/content/manuals/build/builders/drivers/docker.md +++ b/content/manuals/build/builders/drivers/docker.md @@ -38,3 +38,16 @@ If you need additional configuration and flexibility, consider using the For more information on the Docker driver, see the [buildx reference](/reference/cli/docker/buildx/create/#driver). + +## Limitations + +The Docker driver has the following limitations: + + +- You can't configure custom BuildKit versions or parameters. These are + managed internally by the Docker Engine. +- Multi-platform builds require the containerd image store. If your Docker + Engine uses legacy graph-drivers, multi-platform builds are not supported. + Docker Engine v29.x and later uses containerd snapshotters by default, + which does support multi-platform builds. See + [containerd image store](../../../storage/containerd.md) for more details. \ No newline at end of file diff --git a/content/manuals/build/building/multi-platform.md b/content/manuals/build/building/multi-platform.md index 9f35400e5bb1..0dce05e87cc0 100644 --- a/content/manuals/build/building/multi-platform.md +++ b/content/manuals/build/building/multi-platform.md @@ -131,10 +131,15 @@ QEMU that's bundled within the Docker Desktop VM. #### Install QEMU manually -If you're using a builder outside of Docker Desktop, such as if you're using -Docker Engine on Linux, or a custom remote builder, you need to install QEMU -and register the executable types on the host OS. The prerequisites for -installing QEMU are: +If the QEMU emulators bundled with BuildKit aren't available for your build, +manual installation may be required. This is typically only necessary when: + +- You're using a third-party BuildKit package that doesn't bundle QEMU emulators +- You're using an older Docker Engine version without bundled QEMU support +- You're running a custom BuildKit installation where emulators aren't included + +In these situations, install QEMU and register the executable types on the host +OS. The prerequisites for installing QEMU are: - Linux kernel version 4.8 or later - `binfmt-support` version 2.1.7 or later diff --git a/content/manuals/engine/daemon/_index.md b/content/manuals/engine/daemon/_index.md index 32fcab96287a..c4ae0d1286fc 100644 --- a/content/manuals/engine/daemon/_index.md +++ b/content/manuals/engine/daemon/_index.md @@ -37,11 +37,12 @@ This page shows you how to customize the Docker daemon, `dockerd`. ## Configure the Docker daemon -There are two ways to configure the Docker daemon: +There are three ways to configure the Docker daemon: - Use a JSON configuration file. This is the preferred option, since it keeps all configurations in a single place. - Use flags when starting `dockerd`. +- Use environment variables to set daemon options. You can use both of these options together as long as you don't specify the same option both as a flag and in the JSON file. If that happens, the Docker daemon @@ -92,6 +93,32 @@ running: $ dockerd --help ``` +### Configuration using environment variables + +You can configure the Docker daemon using environment variables. This is useful +in systemd service overrides or init scripts. + +To set environment variables for the Docker daemon using systemd, create a +drop-in override file: + +````````console +$ sudo systemctl edit docker +``````` + +Add the following: + +``````ini +[Service] +Environment="DOCKER_OPTS=--debug --tls=true" +````` + +Then reload and restart the daemon: + +````console +$ sudo systemctl daemon-reload +$ sudo systemctl restart docker +``` + ## Daemon data directory The Docker daemon persists all data in a single directory. This tracks diff --git a/content/manuals/extensions/extensions-sdk/build/backend-extension-tutorial.md b/content/manuals/extensions/extensions-sdk/build/backend-extension-tutorial.md index 1b56e0dfaca7..7a6ab8dd8ea6 100644 --- a/content/manuals/extensions/extensions-sdk/build/backend-extension-tutorial.md +++ b/content/manuals/extensions/extensions-sdk/build/backend-extension-tutorial.md @@ -275,14 +275,13 @@ Replace the `ui/src/App.tsx` file with the following code: ```tsx // ui/src/App.tsx -import React, { useEffect } from 'react'; +import React, { useEffect, useState } from 'react'; import { createDockerDesktopClient } from "@docker/extension-api-client"; //obtain docker desktop extension client const ddClient = createDockerDesktopClient(); export function App() { - const ddClient = createDockerDesktopClient(); const [hello, setHello] = useState(); useEffect(() => { diff --git a/content/manuals/extensions/extensions-sdk/guides/invoke-host-binaries.md b/content/manuals/extensions/extensions-sdk/guides/invoke-host-binaries.md index 55e471e15aab..09a857740338 100644 --- a/content/manuals/extensions/extensions-sdk/guides/invoke-host-binaries.md +++ b/content/manuals/extensions/extensions-sdk/guides/invoke-host-binaries.md @@ -1,3 +1,9 @@ + + + + + + --- title: Invoke host binaries description: Add invocations to host binaries from the frontend with the extension @@ -70,8 +76,12 @@ In this example, the binary returns a string as result, obtained by `result?.std {{< tab name="React" >}} ```typescript +import React, { useState, useEffect } from 'react'; +import { createDockerDesktopClient } from '@docker/extension-api-client'; + +const ddClient = createDockerDesktopClient(); + export function App() { - const ddClient = createDockerDesktopClient(); const [hello, setHello] = useState(""); useEffect(() => { diff --git a/content/manuals/scout/integrations/environment/_index.md b/content/manuals/scout/integrations/environment/_index.md index 4dfa8eb7fdc0..b5403cf05d9f 100644 --- a/content/manuals/scout/integrations/environment/_index.md +++ b/content/manuals/scout/integrations/environment/_index.md @@ -30,7 +30,7 @@ that version of the image to the `staging` environment. To add environments to Docker Scout, you can: -- Use the `docker scout env ` CLI command to record images to environments manually +- Use the `docker scout environment ` CLI command to record images to environments manually - Enable a runtime integration to automatically detect images in your environments. Docker Scout supports the following runtime integrations: @@ -52,7 +52,7 @@ To see all of the available environments for an organization, you can use the `docker scout env` command. ```console -$ docker scout env +$ docker scout environment ``` By default, this prints all environments for your personal Docker organization. @@ -60,7 +60,7 @@ To list environments for another organization that you're a part of, use the `--org` flag. ```console -$ docker scout env --org +$ docker scout environment --org ``` You can use the `docker scout config` command to change the default @@ -98,10 +98,11 @@ The list displays all images that have been assigned to the selected environment. If you've deployed multiple versions of the same image in an environment, all versions of the image appear in the list. -Alternatively, you can use the `docker scout env` command to view the images from the terminal. +Alternatively, you can Use the `docker scout environment` command to view the images from the terminal. +use the `docker scout environment` command to view the images from the terminal. ```console -$ docker scout env production +$ docker scout environment production docker/scout-demo-service:main@sha256:ef08dca54c4f371e7ea090914f503982e890ec81d22fd29aa3b012351a44e1bc ```