From d4c14fd0066c842daf6e6d5835f5f43a5eddd9ef Mon Sep 17 00:00:00 2001
From: CrazyMax <crazy-max@users.noreply.github.com>
Date: Fri, 4 Nov 2022 09:17:25 +0100
Subject: [PATCH] docs: examples moved to docs website

Signed-off-by: CrazyMax <crazy-max@users.noreply.github.com>
---
 README.md                                |  35 +---
 docs/advanced/cache.md                   | 206 +----------------------
 docs/advanced/copy-between-registries.md |  57 +------
 docs/advanced/dockerhub-desc.md          |  47 +-----
 docs/advanced/export-docker.md           |  34 +---
 docs/advanced/isolated-builders.md       |  43 +----
 docs/advanced/local-registry.md          |  44 +----
 docs/advanced/multi-platform.md          |  47 +-----
 docs/advanced/named-contexts.md          |  97 +----------
 docs/advanced/push-multi-registries.md   |  52 +-----
 docs/advanced/secrets.md                 |  87 +---------
 docs/advanced/share-image-jobs.md        |  59 +------
 docs/advanced/tags-labels.md             |  76 +--------
 docs/advanced/test-before-push.md        |  66 +-------
 14 files changed, 18 insertions(+), 932 deletions(-)

diff --git a/README.md b/README.md
index b943bb5..ed14a19 100644
--- a/README.md
+++ b/README.md
@@ -18,20 +18,7 @@ ___
 * [Usage](#usage)
   * [Git context](#git-context)
   * [Path context](#path-context)
-* [Advanced usage](#advanced-usage)
-  * [Multi-platform image](docs/advanced/multi-platform.md)
-  * [Secrets](docs/advanced/secrets.md)
-  * [Isolated builders](docs/advanced/isolated-builders.md)
-  * [Push to multi-registries](docs/advanced/push-multi-registries.md)
-  * [Copy between registries](docs/advanced/copy-between-registries.md)
-  * [Cache](docs/advanced/cache.md)
-  * [Local registry](docs/advanced/local-registry.md)
-  * [Export image to Docker](docs/advanced/export-docker.md)
-  * [Share built image between jobs](docs/advanced/share-image-jobs.md)
-  * [Test your image before pushing it](docs/advanced/test-before-push.md)
-  * [Named contexts](docs/advanced/named-contexts.md)
-  * [Handle tags and labels](docs/advanced/tags-labels.md)
-  * [Update Docker Hub repo description](docs/advanced/dockerhub-desc.md)
+* [Examples](#examples)
 * [Customizing](#customizing)
   * [inputs](#inputs)
   * [outputs](#outputs)
@@ -129,8 +116,8 @@ to the default Git context:
 
 Building from the current repository automatically uses the [GitHub Token](https://docs.github.com/en/actions/security-guides/automatic-token-authentication),
 so it does not need to be passed. If you want to authenticate against another
-private repository, you have to use a [secret](docs/advanced/secrets.md) named
-`GIT_AUTH_TOKEN` to be able to authenticate against it with Buildx:
+private repository, you have to use a [secret](https://docs.docker.com/build/ci/github-actions/examples/#secrets)
+named `GIT_AUTH_TOKEN` to be able to authenticate against it with Buildx:
 
 ```yaml
       -
@@ -181,21 +168,9 @@ jobs:
           tags: user/app:latest
 ```
 
-## Advanced usage
+## Examples
 
-* [Multi-platform image](docs/advanced/multi-platform.md)
-* [Secrets](docs/advanced/secrets.md)
-* [Isolated builders](docs/advanced/isolated-builders.md)
-* [Push to multi-registries](docs/advanced/push-multi-registries.md)
-* [Copy between registries](docs/advanced/copy-between-registries.md)
-* [Cache](docs/advanced/cache.md)
-* [Local registry](docs/advanced/local-registry.md)
-* [Export image to Docker](docs/advanced/export-docker.md)
-* [Share built image between jobs](docs/advanced/share-image-jobs.md)
-* [Test your image before pushing it](docs/advanced/test-before-push.md)
-* [Named contexts](docs/advanced/named-contexts.md)
-* [Handle tags and labels](docs/advanced/tags-labels.md)
-* [Update Docker Hub repo description](docs/advanced/dockerhub-desc.md)
+See https://docs.docker.com/build/ci/github-actions/examples/.
 
 ## Customizing
 
diff --git a/docs/advanced/cache.md b/docs/advanced/cache.md
index 561bbd9..060be66 100644
--- a/docs/advanced/cache.md
+++ b/docs/advanced/cache.md
@@ -1,207 +1,3 @@
 # Cache
 
-* [Inline cache](#inline-cache)
-* [Registry cache](#registry-cache)
-* [GitHub cache](#github-cache)
-  * [Cache backend API](#cache-backend-api)
-  * [Local cache](#local-cache)
-
-> **Note**
->
-> See [our guide](https://github.com/docker/buildx/blob/master/docs/guides/cache/index.md)
-> for more details about cache storage backends.
-
-## Inline cache
-
-In most cases you want to use the [`type=inline` cache exporter](https://github.com/docker/buildx/blob/master/docs/guides/cache/inline.md).
-However, note that the `inline` cache exporter only supports `min` cache mode. To enable `max` cache mode, push the
-image and the cache separately by using the `registry` cache exporter as shown in the [next example](#registry-cache).
-
-```yaml
-name: ci
-
-on:
-  push:
-    branches:
-      - 'main'
-
-jobs:
-  docker:
-    runs-on: ubuntu-latest
-    steps:
-      -
-        name: Checkout
-        uses: actions/checkout@v3
-      -
-        name: Set up Docker Buildx
-        uses: docker/setup-buildx-action@v2
-      -
-        name: Login to Docker Hub
-        uses: docker/login-action@v2
-        with:
-          username: ${{ secrets.DOCKERHUB_USERNAME }}
-          password: ${{ secrets.DOCKERHUB_TOKEN }}
-      -
-        name: Build and push
-        uses: docker/build-push-action@v3
-        with:
-          context: .
-          push: true
-          tags: user/app:latest
-          cache-from: type=registry,ref=user/app:latest
-          cache-to: type=inline
-```
-
-## Registry cache
-
-You can import/export cache from a cache manifest or (special) image configuration on the registry with the
-[`type=registry` cache exporter](https://github.com/docker/buildx/blob/master/docs/guides/cache/registry.md).
-
-```yaml
-name: ci
-
-on:
-  push:
-    branches:
-      - 'main'
-
-jobs:
-  docker:
-    runs-on: ubuntu-latest
-    steps:
-      -
-        name: Checkout
-        uses: actions/checkout@v3
-      -
-        name: Set up Docker Buildx
-        uses: docker/setup-buildx-action@v2
-      -
-        name: Login to Docker Hub
-        uses: docker/login-action@v2
-        with:
-          username: ${{ secrets.DOCKERHUB_USERNAME }}
-          password: ${{ secrets.DOCKERHUB_TOKEN }}
-      -
-        name: Build and push
-        uses: docker/build-push-action@v3
-        with:
-          context: .
-          push: true
-          tags: user/app:latest
-          cache-from: type=registry,ref=user/app:buildcache
-          cache-to: type=registry,ref=user/app:buildcache,mode=max
-```
-
-## GitHub cache
-
-### Cache backend API
-
-> **Warning**
->
-> This cache exporter is considered EXPERIMENTAL until further notice. Please
-> provide feedback on [BuildKit repository](https://github.com/moby/buildkit)
-> if you encounter any issues.
-
-[GitHub Actions cache exporter](https://github.com/docker/buildx/blob/master/docs/guides/cache/gha.md)
-backend uses the [GitHub Cache API](https://github.com/tonistiigi/go-actions-cache/blob/master/api.md)
-to fetch and upload cache blobs. That's why this type of cache should be
-exclusively used in a GitHub Action workflow as the `url` (`$ACTIONS_CACHE_URL`)
-and `token` (`$ACTIONS_RUNTIME_TOKEN`) attributes are populated when a workflow
-is started.
-
-```yaml
-name: ci
-
-on:
-  push:
-    branches:
-      - 'main'
-
-jobs:
-  docker:
-    runs-on: ubuntu-latest
-    steps:
-      -
-        name: Checkout
-        uses: actions/checkout@v3
-      -
-        name: Set up Docker Buildx
-        uses: docker/setup-buildx-action@v2
-      -
-        name: Login to Docker Hub
-        uses: docker/login-action@v2
-        with:
-          username: ${{ secrets.DOCKERHUB_USERNAME }}
-          password: ${{ secrets.DOCKERHUB_TOKEN }}
-      -
-        name: Build and push
-        uses: docker/build-push-action@v3
-        with:
-          context: .
-          push: true
-          tags: user/app:latest
-          cache-from: type=gha
-          cache-to: type=gha,mode=max
-```
-
-### Local cache
-
-> **Warning**
->
-> At the moment caches are copied over the existing cache, so it [keeps growing](https://github.com/docker/build-push-action/issues/252).
-> The `Move cache` step is used as a workaround (see [moby/buildkit#1896](https://github.com/moby/buildkit/issues/1896) for more info).
-
-You can also leverage [GitHub cache](https://docs.github.com/en/actions/using-workflows/caching-dependencies-to-speed-up-workflows)
-using the [actions/cache](https://github.com/actions/cache) and [`type=local` cache exporter](https://github.com/docker/buildx/blob/master/docs/guides/cache/local.md)
-with this action:
-
-```yaml
-name: ci
-
-on:
-  push:
-    branches:
-      - 'main'
-
-jobs:
-  docker:
-    runs-on: ubuntu-latest
-    steps:
-      -
-        name: Checkout
-        uses: actions/checkout@v3
-      -
-        name: Set up Docker Buildx
-        uses: docker/setup-buildx-action@v2
-      -
-        name: Cache Docker layers
-        uses: actions/cache@v3
-        with:
-          path: /tmp/.buildx-cache
-          key: ${{ runner.os }}-buildx-${{ github.sha }}
-          restore-keys: |
-            ${{ runner.os }}-buildx-
-      -
-        name: Login to Docker Hub
-        uses: docker/login-action@v2
-        with:
-          username: ${{ secrets.DOCKERHUB_USERNAME }}
-          password: ${{ secrets.DOCKERHUB_TOKEN }}
-      -
-        name: Build and push
-        uses: docker/build-push-action@v3
-        with:
-          context: .
-          push: true
-          tags: user/app:latest
-          cache-from: type=local,src=/tmp/.buildx-cache
-          cache-to: type=local,dest=/tmp/.buildx-cache-new,mode=max
-      -
-        # Temp fix
-        # https://github.com/docker/build-push-action/issues/252
-        # https://github.com/moby/buildkit/issues/1896
-        name: Move cache
-        run: |
-          rm -rf /tmp/.buildx-cache
-          mv /tmp/.buildx-cache-new /tmp/.buildx-cache
-```
+This page has moved to [Docker Docs website](https://docs.docker.com/build/ci/github-actions/examples/#cache)
diff --git a/docs/advanced/copy-between-registries.md b/docs/advanced/copy-between-registries.md
index 3838481..84cb9f0 100644
--- a/docs/advanced/copy-between-registries.md
+++ b/docs/advanced/copy-between-registries.md
@@ -1,58 +1,3 @@
 # Copy images between registries
 
-[Multi-platform images](https://docs.docker.com/build/building/multi-platform/)
-built using Buildx can be copied from one registry to another using the
-[`imagetools create` command](https://docs.docker.com/engine/reference/commandline/buildx_imagetools_create/):
-
-```yaml
-name: ci
-
-on:
-  push:
-    branches:
-      - 'main'
-
-jobs:
-  docker:
-    runs-on: ubuntu-latest
-    steps:
-      - 
-        name: Checkout
-        uses: actions/checkout@v3
-      -
-        name: Set up QEMU
-        uses: docker/setup-qemu-action@v2
-      -
-        name: Set up Docker Buildx
-        uses: docker/setup-buildx-action@v2
-      -
-        name: Login to Docker Hub
-        uses: docker/login-action@v2
-        with:
-          username: ${{ secrets.DOCKERHUB_USERNAME }}
-          password: ${{ secrets.DOCKERHUB_TOKEN }}
-      -
-        name: Login to GitHub Container Registry
-        uses: docker/login-action@v2
-        with:
-          registry: ghcr.io
-          username: ${{ github.repository_owner }}
-          password: ${{ secrets.GITHUB_TOKEN }}
-      -
-        name: Build and push
-        uses: docker/build-push-action@v3
-        with:
-          context: .
-          platforms: linux/amd64,linux/arm64
-          push: true
-          tags: |
-            user/app:latest
-            user/app:1.0.0
-      -
-        name: Push image to GHCR
-        run: |
-          docker buildx imagetools create \
-            --tag ghcr.io/user/app:latest \
-            --tag ghcr.io/user/app:1.0.0 \
-            user/app:latest
-```
+This page has moved to [Docker Docs website](https://docs.docker.com/build/ci/github-actions/examples/#copy-images-between-registries)
diff --git a/docs/advanced/dockerhub-desc.md b/docs/advanced/dockerhub-desc.md
index a6c0984..57b57e9 100644
--- a/docs/advanced/dockerhub-desc.md
+++ b/docs/advanced/dockerhub-desc.md
@@ -1,48 +1,3 @@
 # Update Docker Hub repo description
 
-You can update the [Docker Hub repository description](https://docs.docker.com/docker-hub/repos/)
-using a third party action called [Docker Hub Description](https://github.com/peter-evans/dockerhub-description)
-with this action:
-
-```yaml
-name: ci
-
-on:
-  push:
-    branches:
-      - 'main'
-
-jobs:
-  docker:
-    runs-on: ubuntu-latest
-    steps:
-      -
-        name: Checkout
-        uses: actions/checkout@v3
-      -
-        name: Set up QEMU
-        uses: docker/setup-qemu-action@v2
-      -
-        name: Set up Docker Buildx
-        uses: docker/setup-buildx-action@v2
-      -
-        name: Login to Docker Hub
-        uses: docker/login-action@v2
-        with:
-          username: ${{ secrets.DOCKERHUB_USERNAME }}
-          password: ${{ secrets.DOCKERHUB_TOKEN }}
-      -
-        name: Build and push
-        uses: docker/build-push-action@v3
-        with:
-          context: .
-          push: true
-          tags: user/app:latest
-      -
-        name: Update repo description
-        uses: peter-evans/dockerhub-description@v2
-        with:
-          username: ${{ secrets.DOCKERHUB_USERNAME }}
-          password: ${{ secrets.DOCKERHUB_PASSWORD }}
-          repository: user/app
-```
+This page has moved to [Docker Docs website](https://docs.docker.com/build/ci/github-actions/examples/#update-docker-hub-repository-description)
diff --git a/docs/advanced/export-docker.md b/docs/advanced/export-docker.md
index 22174a2..b2274d3 100644
--- a/docs/advanced/export-docker.md
+++ b/docs/advanced/export-docker.md
@@ -1,35 +1,3 @@
 # Export image to Docker
 
-You may want your build result to be available in the Docker client through
-`docker images` to be able to use it in another step of your workflow:
-
-```yaml
-name: ci
-
-on:
-  push:
-    branches:
-      - 'main'
-
-jobs:
-  docker:
-    runs-on: ubuntu-latest
-    steps:
-      -
-        name: Checkout
-        uses: actions/checkout@v3
-      -
-        name: Set up Docker Buildx
-        uses: docker/setup-buildx-action@v2
-      -
-        name: Build
-        uses: docker/build-push-action@v3
-        with:
-          context: .
-          load: true
-          tags: myimage:latest
-      -
-        name: Inspect
-        run: |
-          docker image inspect myimage:latest
-```
+This page has moved to [Docker Docs website](https://docs.docker.com/build/ci/github-actions/examples/#export-image-to-docker)
diff --git a/docs/advanced/isolated-builders.md b/docs/advanced/isolated-builders.md
index 8dcac71..672aa19 100644
--- a/docs/advanced/isolated-builders.md
+++ b/docs/advanced/isolated-builders.md
@@ -1,44 +1,3 @@
 # Isolated builders
 
-```yaml
-name: ci
-
-on:
-  push:
-    branches:
-      - 'main'
-
-jobs:
-  docker:
-    runs-on: ubuntu-latest
-    steps:
-      -
-        name: Checkout
-        uses: actions/checkout@v3
-      -
-        uses: docker/setup-buildx-action@v2
-        id: builder1
-      -
-        uses: docker/setup-buildx-action@v2
-        id: builder2
-      -
-        name: Builder 1 name
-        run: echo ${{ steps.builder1.outputs.name }}
-      -
-        name: Builder 2 name
-        run: echo ${{ steps.builder2.outputs.name }}
-      -
-        name: Build against builder1
-        uses: docker/build-push-action@v3
-        with:
-          builder: ${{ steps.builder1.outputs.name }}
-          context: .
-          target: mytarget1
-      -
-        name: Build against builder2
-        uses: docker/build-push-action@v3
-        with:
-          builder: ${{ steps.builder2.outputs.name }}
-          context: .
-          target: mytarget2
-```
+This page has moved to [Docker Docs website](https://docs.docker.com/build/ci/github-actions/examples/#isolated-builders)
diff --git a/docs/advanced/local-registry.md b/docs/advanced/local-registry.md
index f6e7f5f..d311610 100644
--- a/docs/advanced/local-registry.md
+++ b/docs/advanced/local-registry.md
@@ -1,45 +1,3 @@
 # Local registry
 
-For testing purposes you may need to create a [local registry](https://hub.docker.com/_/registry)
-to push images into:
-
-```yaml
-name: ci
-
-on:
-  push:
-    branches:
-      - 'main'
-
-jobs:
-  docker:
-    runs-on: ubuntu-latest
-    services:
-      registry:
-        image: registry:2
-        ports:
-          - 5000:5000
-    steps:
-      -
-        name: Checkout
-        uses: actions/checkout@v3
-      -
-        name: Set up QEMU
-        uses: docker/setup-qemu-action@v2
-      -
-        name: Set up Docker Buildx
-        uses: docker/setup-buildx-action@v2
-        with:
-          driver-opts: network=host
-      -
-        name: Build and push to local registry
-        uses: docker/build-push-action@v3
-        with:
-          context: .
-          push: true
-          tags: localhost:5000/name/app:latest
-      -
-        name: Inspect
-        run: |
-          docker buildx imagetools inspect localhost:5000/name/app:latest
-```
+This page has moved to [Docker Docs website](https://docs.docker.com/build/ci/github-actions/examples/#local-registry)
diff --git a/docs/advanced/multi-platform.md b/docs/advanced/multi-platform.md
index 8d6bae0..186073e 100644
--- a/docs/advanced/multi-platform.md
+++ b/docs/advanced/multi-platform.md
@@ -1,48 +1,3 @@
 # Multi-platform image
 
-You can build [multi-platform images](https://docs.docker.com/build/building/multi-platform/)
-using the [`platforms` input](../../README.md#inputs) as described below.
-
-> **Note**
->
-> * List of available platforms will be displayed and available through our
->   [setup-buildx](https://github.com/docker/setup-buildx-action#about) action.
-> * If you want support for more platforms, you can use QEMU with our
->   [setup-qemu](https://github.com/docker/setup-qemu-action) action.
-
-```yaml
-name: ci
-
-on:
-  push:
-    branches:
-      - 'main'
-
-jobs:
-  docker:
-    runs-on: ubuntu-latest
-    steps:
-      -
-        name: Checkout
-        uses: actions/checkout@v3
-      -
-        name: Set up QEMU
-        uses: docker/setup-qemu-action@v2
-      -
-        name: Set up Docker Buildx
-        uses: docker/setup-buildx-action@v2
-      -
-        name: Login to Docker Hub
-        uses: docker/login-action@v2
-        with:
-          username: ${{ secrets.DOCKERHUB_USERNAME }}
-          password: ${{ secrets.DOCKERHUB_TOKEN }}
-      -
-        name: Build and push
-        uses: docker/build-push-action@v3
-        with:
-          context: .
-          platforms: linux/amd64,linux/arm64
-          push: true
-          tags: user/app:latest
-```
+This page has moved to [Docker Docs website](https://docs.docker.com/build/ci/github-actions/examples/#multi-platform-images)
diff --git a/docs/advanced/named-contexts.md b/docs/advanced/named-contexts.md
index f0e85e8..de66308 100644
--- a/docs/advanced/named-contexts.md
+++ b/docs/advanced/named-contexts.md
@@ -1,98 +1,3 @@
 # Named contexts
 
-You can define [additional build contexts](https://docs.docker.com/engine/reference/commandline/buildx_build/#build-context)
-that can be accessed in your Dockerfile with `FROM name` or `--from=name`. When
-Dockerfile defines a stage with the same name it is overwritten.
-
-This can be useful with GitHub Actions to reuse results from other builds or
-pin an image to a spcific tag in your workflow.
-
-* [Pin image to a specific tag](#pin-image-to-a-specific-tag)
-* [Usage of the built image in other build steps](#usage-of-the-built-image-in-other-build-steps)
-
-## Pin image to a specific tag
-
-Replace `alpine:latest` with a pinned one:
-
-```dockerfile
-# syntax=docker/dockerfile:1
-FROM alpine
-RUN echo "Hello World"
-```
-
-```yaml
-name: ci
-
-on:
-  push:
-    branches:
-      - 'main'
-
-jobs:
-  docker:
-    runs-on: ubuntu-latest
-    steps:
-      -
-        name: Checkout
-        uses: actions/checkout@v3
-      -
-        name: Set up Docker Buildx
-        uses: docker/setup-buildx-action@v2
-      -
-        name: Build
-        uses: docker/build-push-action@v3
-        with:
-          context: .
-          build-contexts: |
-            alpine=docker-image://alpine:3.16
-          tags: myimage:latest
-```
-
-## Usage of the built image in other build steps
-
-By default, the [`setup-buildx` action](https://github.com/docker/setup-buildx-action#about)
-uses `docker-container` as a build driver, so built Docker images are not
-available in the builder container.
-
-With named contexts you can reuse the built image:
-
-```dockerfile
-# syntax=docker/dockerfile:1
-FROM alpine
-RUN echo "Hello World"
-```
-
-```yaml
-name: ci
-
-on:
-  push:
-    branches:
-      - 'main'
-
-jobs:
-  docker:
-    runs-on: ubuntu-latest
-    steps:
-      -
-        name: Checkout
-        uses: actions/checkout@v3
-      -
-        name: Set up Docker Buildx
-        uses: docker/setup-buildx-action@v2
-      -
-        name: Build base image
-        uses: docker/build-push-action@v3
-        with:
-          context: base
-          load: true
-          tags: my-base-image:latest
-      -
-        name: Build
-        uses: docker/build-push-action@v3
-        with:
-          context: .
-          build-contexts: |
-            alpine=docker-image://my-base-image:latest
-          tags: myimage:latest
-```
+This page has moved to [Docker Docs website](https://docs.docker.com/build/ci/github-actions/examples/#named-contexts)
diff --git a/docs/advanced/push-multi-registries.md b/docs/advanced/push-multi-registries.md
index 4553f81..a8ee7d6 100644
--- a/docs/advanced/push-multi-registries.md
+++ b/docs/advanced/push-multi-registries.md
@@ -1,53 +1,3 @@
 # Push to multi-registries
 
-The following workflow will connect you to [Docker Hub](https://github.com/docker/login-action#dockerhub)
-and [GitHub Container Registry](https://github.com/docker/login-action#github-container-registry)
-and push the image to these registries:
-
-```yaml
-name: ci
-
-on:
-  push:
-    branches:
-      - 'main'
-
-jobs:
-  docker:
-    runs-on: ubuntu-latest
-    steps:
-      -
-        name: Checkout
-        uses: actions/checkout@v3
-      -
-        name: Set up QEMU
-        uses: docker/setup-qemu-action@v2
-      -
-        name: Set up Docker Buildx
-        uses: docker/setup-buildx-action@v2
-      -
-        name: Login to Docker Hub
-        uses: docker/login-action@v2
-        with:
-          username: ${{ secrets.DOCKERHUB_USERNAME }}
-          password: ${{ secrets.DOCKERHUB_TOKEN }}
-      -
-        name: Login to GitHub Container Registry
-        uses: docker/login-action@v2
-        with:
-          registry: ghcr.io
-          username: ${{ github.repository_owner }}
-          password: ${{ secrets.GITHUB_TOKEN }}
-      -
-        name: Build and push
-        uses: docker/build-push-action@v3
-        with:
-          context: .
-          platforms: linux/amd64,linux/arm64
-          push: true
-          tags: |
-            user/app:latest
-            user/app:1.0.0
-            ghcr.io/user/app:latest
-            ghcr.io/user/app:1.0.0
-```
+This page has moved to [Docker Docs website](https://docs.docker.com/build/ci/github-actions/examples/#push-to-multi-registries)
diff --git a/docs/advanced/secrets.md b/docs/advanced/secrets.md
index b670845..0cc464d 100644
--- a/docs/advanced/secrets.md
+++ b/docs/advanced/secrets.md
@@ -1,88 +1,3 @@
 # Secrets
 
-In the following example we will expose and use the [GITHUB_TOKEN secret](https://docs.github.com/en/actions/security-guides/automatic-token-authentication#about-the-github_token-secret)
-as provided by GitHub in your workflow.
-
-First let's create our `Dockerfile` to use our secret:
-
-```dockerfile
-# syntax=docker/dockerfile:1
-FROM alpine
-RUN --mount=type=secret,id=github_token \
-  cat /run/secrets/github_token
-```
-
-As you can see we have named our secret `github_token`. Here is the workflow
-you can use to expose this secret using the [`secrets` input](../../README.md#inputs):
-
-```yaml
-name: ci
-
-on:
-  push:
-    branches:
-      - 'main'
-
-jobs:
-  docker:
-    runs-on: ubuntu-latest
-    steps:
-      -
-        name: Checkout
-        uses: actions/checkout@v3
-      -
-        name: Set up QEMU
-        uses: docker/setup-qemu-action@v2
-      -
-        name: Set up Docker Buildx
-        uses: docker/setup-buildx-action@v2
-      -
-        name: Build
-        uses: docker/build-push-action@v3
-        with:
-          context: .
-          platforms: linux/amd64,linux/arm64
-          tags: user/app:latest
-          secrets: |
-            "github_token=${{ secrets.GITHUB_TOKEN }}"
-```
-
-> **Note**
->
-> You can also expose a secret file to the build with the [`secret-files`](../../README.md#inputs) input:
-> ```yaml
-> secret-files: |
->   "MY_SECRET=./secret.txt"
-> ```
-
-If you're using [GitHub secrets](https://docs.github.com/en/actions/security-guides/encrypted-secrets)
-and need to handle multi-line value, you will need to place the key-value pair
-between quotes:
-
-```yaml
-secrets: |
-  "MYSECRET=${{ secrets.GPG_KEY }}"
-  GIT_AUTH_TOKEN=abcdefghi,jklmno=0123456789
-  "MYSECRET=aaaaaaaa
-  bbbbbbb
-  ccccccccc"
-  FOO=bar
-  "EMPTYLINE=aaaa
-  
-  bbbb
-  ccc"
-  "JSON_SECRET={""key1"":""value1"",""key2"":""value2""}"
-```
-
-| Key                | Value                               |
-|--------------------|-------------------------------------|
-| `MYSECRET`         | `***********************`           |
-| `GIT_AUTH_TOKEN`   | `abcdefghi,jklmno=0123456789`       |
-| `MYSECRET`         | `aaaaaaaa\nbbbbbbb\nccccccccc`      |
-| `FOO`              | `bar`                               |
-| `EMPTYLINE`        | `aaaa\n\nbbbb\nccc`                 |
-| `JSON_SECRET`      | `{"key1":"value1","key2":"value2"}` |
-
-> **Note**
->
-> All quote signs need to be doubled for escaping.
+This page has moved to [Docker Docs website](https://docs.docker.com/build/ci/github-actions/examples/#secrets)
diff --git a/docs/advanced/share-image-jobs.md b/docs/advanced/share-image-jobs.md
index a380054..cf1b6a1 100644
--- a/docs/advanced/share-image-jobs.md
+++ b/docs/advanced/share-image-jobs.md
@@ -1,60 +1,3 @@
 # Share built image between jobs
 
-As each job is isolated in its own runner you cannot use your built image
-between jobs (except for [self-hosted runners](https://docs.github.com/en/actions/hosting-your-own-runners/about-self-hosted-runners)).
-However, you can [pass data between jobs in a workflow](https://docs.github.com/en/actions/using-workflows/storing-workflow-data-as-artifacts#passing-data-between-jobs-in-a-workflow)
-using the [actions/upload-artifact](https://github.com/actions/upload-artifact)
-and [actions/download-artifact](https://github.com/actions/download-artifact)
-actions:
-
-```yaml
-name: ci
-
-on:
-  push:
-    branches:
-      - 'main'
-
-jobs:
-  build:
-    runs-on: ubuntu-latest
-    steps:
-      -
-        name: Checkout
-        uses: actions/checkout@v3
-      -
-        name: Set up Docker Buildx
-        uses: docker/setup-buildx-action@v2
-      -
-        name: Build and export
-        uses: docker/build-push-action@v3
-        with:
-          context: .
-          tags: myimage:latest
-          outputs: type=docker,dest=/tmp/myimage.tar
-      -
-        name: Upload artifact
-        uses: actions/upload-artifact@v3
-        with:
-          name: myimage
-          path: /tmp/myimage.tar
-
-  use:
-    runs-on: ubuntu-latest
-    needs: build
-    steps:
-      -
-        name: Set up Docker Buildx
-        uses: docker/setup-buildx-action@v2
-      -
-        name: Download artifact
-        uses: actions/download-artifact@v3
-        with:
-          name: myimage
-          path: /tmp
-      -
-        name: Load image
-        run: |
-          docker load --input /tmp/myimage.tar
-          docker image ls -a
-```
+This page has moved to [Docker Docs website](https://docs.docker.com/build/ci/github-actions/examples/#share-built-image-between-jobs)
diff --git a/docs/advanced/tags-labels.md b/docs/advanced/tags-labels.md
index 6447c7a..c3993db 100644
--- a/docs/advanced/tags-labels.md
+++ b/docs/advanced/tags-labels.md
@@ -1,77 +1,3 @@
 # Handle tags and labels
 
-If you want an "automatic" tag management and [OCI Image Format Specification](https://github.com/opencontainers/image-spec/blob/master/annotations.md)
-for labels, you can do it in a dedicated step. The following workflow will use
-the [Docker metadata action](https://github.com/docker/metadata-action) to
-handle tags and labels based on GitHub actions events and Git metadata:
-
-```yaml
-name: ci
-
-on:
-  schedule:
-    - cron: '0 10 * * *'
-  push:
-    branches:
-      - '**'
-    tags:
-      - 'v*.*.*'
-  pull_request:
-    branches:
-      - 'main'
-
-jobs:
-  docker:
-    runs-on: ubuntu-latest
-    steps:
-      -
-        name: Checkout
-        uses: actions/checkout@v3
-      -
-        name: Docker meta
-        id: meta
-        uses: docker/metadata-action@v4
-        with:
-          # list of Docker images to use as base name for tags
-          images: |
-            name/app
-            ghcr.io/username/app
-          # generate Docker tags based on the following events/attributes
-          tags: |
-            type=schedule
-            type=ref,event=branch
-            type=ref,event=pr
-            type=semver,pattern={{version}}
-            type=semver,pattern={{major}}.{{minor}}
-            type=semver,pattern={{major}}
-            type=sha
-      -
-        name: Set up QEMU
-        uses: docker/setup-qemu-action@v2
-      -
-        name: Set up Docker Buildx
-        uses: docker/setup-buildx-action@v2
-      -
-        name: Login to Docker Hub
-        if: github.event_name != 'pull_request'
-        uses: docker/login-action@v2
-        with:
-          username: ${{ secrets.DOCKERHUB_USERNAME }}
-          password: ${{ secrets.DOCKERHUB_TOKEN }}
-      -
-        name: Login to GHCR
-        if: github.event_name != 'pull_request'
-        uses: docker/login-action@v2
-        with:
-          registry: ghcr.io
-          username: ${{ github.repository_owner }}
-          password: ${{ secrets.GITHUB_TOKEN }}
-      -
-        name: Build and push
-        uses: docker/build-push-action@v3
-        with:
-          context: .
-          push: ${{ github.event_name != 'pull_request' }}
-          tags: ${{ steps.meta.outputs.tags }}
-          labels: ${{ steps.meta.outputs.labels }}
-```
+This page has moved to [Docker Docs website](https://docs.docker.com/build/ci/github-actions/examples/#manage-tags-and-labels)
diff --git a/docs/advanced/test-before-push.md b/docs/advanced/test-before-push.md
index 84b08a5..6b3ac99 100644
--- a/docs/advanced/test-before-push.md
+++ b/docs/advanced/test-before-push.md
@@ -1,67 +1,3 @@
 # Test your image before pushing it
 
-In some cases, you might want to validate that the image works as expected
-before pushing it.
-
-The workflow below will be composed of several steps to achieve this:
-* Build and export the image to Docker
-* Test your image
-* Multi-platform build and push the image
-
-```yaml
-name: ci
-
-on:
-  push:
-    branches:
-      - 'main'
-
-env:
-  TEST_TAG: user/app:test
-  LATEST_TAG: user/app:latest
-
-jobs:
-  docker:
-    runs-on: ubuntu-latest
-    steps:
-      -
-        name: Checkout
-        uses: actions/checkout@v3
-      -
-        name: Set up QEMU
-        uses: docker/setup-qemu-action@v2
-      -
-        name: Set up Docker Buildx
-        uses: docker/setup-buildx-action@v2
-      -
-        name: Login to Docker Hub
-        uses: docker/login-action@v2
-        with:
-          username: ${{ secrets.DOCKERHUB_USERNAME }}
-          password: ${{ secrets.DOCKERHUB_TOKEN }}
-      -
-        name: Build and export to Docker
-        uses: docker/build-push-action@v3
-        with:
-          context: .
-          load: true
-          tags: ${{ env.TEST_TAG }}
-      -
-        name: Test
-        run: |
-          docker run --rm ${{ env.TEST_TAG }}
-      -
-        name: Build and push
-        uses: docker/build-push-action@v3
-        with:
-          context: .
-          platforms: linux/amd64,linux/arm64
-          push: true
-          tags: ${{ env.LATEST_TAG }}
-```
-
-> **Note**
->
-> Build time will not be increased with this workflow because internal cache
-> for `linux/amd64` will be used from previous step on `Build and push` step
-> so only `linux/arm64` will be actually built.
+This page has moved to [Docker Docs website](https://docs.docker.com/build/ci/github-actions/examples/#test-your-image-before-pushing-it)