Skip to content

Commit

Permalink
site: use filter-based nav for guides
Browse files Browse the repository at this point in the history
Signed-off-by: David Karlsson <35727626+dvdksn@users.noreply.github.com>
  • Loading branch information
dvdksn committed Oct 3, 2024
1 parent 953a638 commit 340b9a6
Show file tree
Hide file tree
Showing 171 changed files with 1,216 additions and 1,004 deletions.
File renamed without changes.
File renamed without changes.
4 changes: 0 additions & 4 deletions content/get-started/workshop/10_what_next.md
Original file line number Diff line number Diff line change
Expand Up @@ -51,7 +51,3 @@ Docker recommends watching the video workshop from DockerCon 2022. Watch the ent
If you'd like to see how containers are built from scratch, Liz Rice from Aqua Security has a fantastic talk in which she creates a container from scratch in Go. While the talk does not go into networking, using images for the filesystem, and other advanced topics, it gives a deep dive into how things are working.

<iframe src="https://www.youtube-nocookie.com/embed/8fi7uSYlOdc" style="max-width: 100%; aspect-ratio: 16 / 9;" width="560" height="auto" frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>

## Language-specific guides

If you are looking for information on how to containerize an application using your favorite language, see the [Language-specific guides](/guides/language/_index.md).
37 changes: 1 addition & 36 deletions content/guides/_index.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,42 +4,7 @@ keywords: Docker guides
description: Explore the Docker guides
params:
icon: developer_guide
notoc: true
dive-deeper:
- title: Language-specific guides
description: Learn how to containerize, develop, and test language-specific apps using Docker.
link: /language/
icon: code
- title: Use-case guides
description: Walk through practical Docker applications for specific scenarios.
link: /guides/use-case/
icon: task
- title: Deployment and Orchestration
description: Deploy and manage Docker containers at scale.
link: /guides/deployment-orchestration/orchestration/
icon: workspaces
resources:
- title: Educational resources
description: Explore diverse Docker training and hands-on experiences.
link: /guides/resources/
icon: book
- title: Contribute to Docker's docs
description: Learn how to help contribute to Docker docs.
link: /contribute/
icon: edit
layout: wide
layout: landing
---

This section contains more advanced guides to help you learn how Docker can optimize your development workflows.

## Advancing with Docker

Explore more advanced concepts and scenarios in Docker.

{{< grid items="dive-deeper" >}}

## Educational resources and contributions

Discover community-driven resources and learn how to contribute to Docker docs.

{{< grid items="resources" >}}
Original file line number Diff line number Diff line change
@@ -1,12 +1,20 @@
---
description: Containerize and develop C++ applications using Docker.
keywords: getting started, c++
title: C++ language-specific guide
linkTitle: C++
description: Containerize and develop C++ applications using Docker.
keywords: getting started, c++
summary: |
This guide explains how to containerize C++ applications using Docker,
covering how to build Docker images, manage dependencies, and deploy C++ apps
efficiently in containers.
toc_min: 1
toc_max: 2
aliases:
- /language/cpp/
languages: [cpp]
levels: [beginner]
params:
time: 10 minutes
---

The C++ getting started guide teaches you how to create a containerized C++ application using Docker. In this guide, you'll learn how to:
Expand All @@ -23,5 +31,3 @@ The C++ getting started guide teaches you how to create a containerized C++ appl
After completing the C++ getting started modules, you should be able to containerize your own C++ application based on the examples and instructions provided in this guide.

Start by containerizing an existing C++ application.

{{< button text="Containerize a C++ app" url="containerize.md" >}}
Original file line number Diff line number Diff line change
Expand Up @@ -129,5 +129,3 @@ Related information:
## Next steps

Next, learn how you can locally test and debug your workloads on Kubernetes before deploying.

{{< button text="Test your deployment" url="./deploy.md" >}}
Original file line number Diff line number Diff line change
Expand Up @@ -89,5 +89,3 @@ Related information:

In the next section, you'll learn how you can develop your application using
containers.

{{< button text="Develop your application" url="develop.md" >}}
File renamed without changes.
Original file line number Diff line number Diff line change
Expand Up @@ -73,5 +73,3 @@ Related information:
## Next steps

In the next section, you'll take a look at how to set up a CI/CD pipeline using GitHub Actions.

{{< button text="Configure CI/CD" url="configure-ci-cd.md" >}}
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,14 @@
description: Learn how to run, connect to, and persist data in a local containerized database.
keywords: database, mysql
title: Use containerized databases
summary: |
Learn how to effectively run and manage databases using Docker containers,
with guides on setup, data persistence, networking, and best practices to
streamline your development and deployment processes.
levels: [beginner]
subjects: [databases]
params:
time: 20 minutes
---

Using a local containerized database offers flexibility and ease of setup,
Expand Down
7 changes: 0 additions & 7 deletions content/guides/deployment-orchestration/_index.md

This file was deleted.

59 changes: 59 additions & 0 deletions content/guides/docker-build-cloud/_index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,59 @@
---
title: "Docker Build Cloud: Reclaim your time with fast, multi-architecture builds"
linkTitle: Docker Build Cloud
description: |
Learn how to build and deploy Docker images to the cloud with Docker Build
Cloud.
summary: |
Create applications up to 39x faster using cloud-based resources, shared team
cache, and native multi-architecture support.
levels: [beginner]
products: [dbc]
params:
featured: true
image: images/learning-paths/build-cloud.png
time: 10 minutes
resource_links:
- title: Product page
url: https://www.docker.com/products/build-cloud/
- title: Docker Build Cloud overview
url: /build-cloud/
- title: Subscriptions and features
url: /subscription/build-cloud/build-details/
- title: Using Docker Build Cloud
url: /build-cloud/usage/
---

<!-- vale Vale.Spelling = NO -->

98% of developers spend up to an hour every day waiting for builds to finish
([Incredibuild: 2022 Big Dev Build Times](https://www.incredibuild.com/survey-report-2022)).
Heavy, complex builds can become a major roadblock for development teams,
slowing down both local development and CI/CD pipelines.

<!-- vale Vale.Spelling = YES -->

Docker Build Cloud speeds up image build times to improve developer
productivity, reduce frustrations, and help you shorten the release cycle.

## Who’s this for?

- Anyone who wants to tackle common causes of slow image builds: limited local
resources, slow emulation, and lack of build collaboration across a team.
- Developers working on older machines who want to build faster.
- Development teams working on the same repository who want to cut wait times
with a shared cache.
- Developers performing multi-architecture builds who don’t want to spend hours
configuring and rebuilding for emulators.

## What you’ll learn

- Building container images faster locally and in CI
- Accelerating builds for multi-platform images
- Reusing pre-built images to expedite workflows

## Tools integration

Works well with Docker Compose, GitHub Actions, and other CI solutions

<div id="dbc-lp-survey-anchor"></div>
22 changes: 22 additions & 0 deletions content/guides/docker-build-cloud/ci.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
---
title: "Demo: Using Docker Build Cloud in CI"
description: Learn how to use Docker Build Cloud to build your app faster in CI.
weight: 30
---

Docker Build Cloud can significantly decrease the time it takes for your CI builds
take to run, saving you time and money.

Since the builds run remotely, your CI runner can still use the Docker tooling CLI
without needing elevated permissions, making your builds more secure by default.

In this demo, you will see:

- How to integrate Docker Build Cloud into a variety of CI platforms
- How to use Docker Build Cloud in GitHub Actions to build multi-architecture images
- Speed differences between a workflow using Docker Build Cloud and a workflow running natively
- How to use Docker Build Cloud in a GitLab Pipeline

{{< youtube-embed "wvLdInoVBGg" >}}

<div id="dbc-lp-survey-anchor"></div>
69 changes: 69 additions & 0 deletions content/guides/docker-build-cloud/common-questions.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,69 @@
---
title: Common challenges and questions
description: Explore common challenges and questions related to Docker Build Cloud.
weight: 40
---

### Is Docker Build Cloud a standalone product or a part of Docker Desktop?

Check warning on line 7 in content/guides/docker-build-cloud/common-questions.md

View workflow job for this annotation

GitHub Actions / vale

[vale] reported by reviewdog 🐶 [Docker.HeadingLength] Try to keep headings short (< 8 words). Raw Output: {"message": "[Docker.HeadingLength] Try to keep headings short (\u003c 8 words).", "location": {"path": "content/guides/docker-build-cloud/common-questions.md", "range": {"start": {"line": 7, "column": 5}}}, "severity": "INFO"}

Docker Build Cloud is a service that can be used both with Docker Desktop and
standalone. It lets you build your container images faster, both locally and in
CI, with builds running on cloud infrastructure. The service uses a remote
build cache, ensuring fast builds anywhere and for all team members.

When used with Docker Desktop, the [Builds view](/desktop/use-desktop/builds/)
works with Docker Build Cloud out-of-the-box. It shows information about your
builds and those initiated by your team members using the same builder,
enabling collaborative troubleshooting.

To use Docker Build Cloud without Docker Desktop, you must
[download and install](/build-cloud/setup/#use-docker-build-cloud-without-docker-desktop)
a version of Buildx with support for Docker Build Cloud (the `cloud` driver).
If you plan on building with Docker Build Cloud using the `docker compose
build` command, you also need a version of Docker Compose that supports Docker
Build Cloud.

### How does Docker Build Cloud work with Docker Compose?

Check warning on line 26 in content/guides/docker-build-cloud/common-questions.md

View workflow job for this annotation

GitHub Actions / vale

[vale] reported by reviewdog 🐶 [Docker.HeadingLength] Try to keep headings short (< 8 words). Raw Output: {"message": "[Docker.HeadingLength] Try to keep headings short (\u003c 8 words).", "location": {"path": "content/guides/docker-build-cloud/common-questions.md", "range": {"start": {"line": 26, "column": 5}}}, "severity": "INFO"}

Docker Compose works out of the box with Docker Build Cloud. Install the Docker
Build Cloud-compatible client (buildx) and it works with both commands.

### How many minutes are included in Docker Build Cloud Team plans?

Check warning on line 31 in content/guides/docker-build-cloud/common-questions.md

View workflow job for this annotation

GitHub Actions / vale

[vale] reported by reviewdog 🐶 [Docker.HeadingLength] Try to keep headings short (< 8 words). Raw Output: {"message": "[Docker.HeadingLength] Try to keep headings short (\u003c 8 words).", "location": {"path": "content/guides/docker-build-cloud/common-questions.md", "range": {"start": {"line": 31, "column": 5}}}, "severity": "INFO"}

You receive 200 minutes per month per purchased seat. If you are also a Docker
subscriber (Personal, Pro, Team, Business), you will also receive your included
build minutes from that plan.

For example, if a Docker Team customer purchases 5 Build Cloud Team seats, they
will have 400 minutes from their Docker Team plan plus 1000 minutes (200 min/mo * 5 seats)
for a total of 1400 minutes per month.

### I’m a Docker personal user. Can I try Docker Build Cloud?

Check warning on line 41 in content/guides/docker-build-cloud/common-questions.md

View workflow job for this annotation

GitHub Actions / vale

[vale] reported by reviewdog 🐶 [Docker.HeadingLength] Try to keep headings short (< 8 words). Raw Output: {"message": "[Docker.HeadingLength] Try to keep headings short (\u003c 8 words).", "location": {"path": "content/guides/docker-build-cloud/common-questions.md", "range": {"start": {"line": 41, "column": 5}}}, "severity": "INFO"}

Docker subscribers (Pro, Team, Business) receive a set number of minutes each
month, shared across the account, to use Build Cloud.

If you do not have a Docker subscription, you may sign up for a free Personal
account and get 50 minutes per month. Personal accounts are limited to a single
user.

For teams to receive the shared cache benefit, they must either be on a Docker
Team, Docker Business, or paid Build Cloud Team plan. You may buy a month of
Build Cloud Team for the number of seats testing.

### Does Docker Build Cloud support CI platforms? Does it work with GitHub Actions?

Check warning on line 54 in content/guides/docker-build-cloud/common-questions.md

View workflow job for this annotation

GitHub Actions / vale

[vale] reported by reviewdog 🐶 [Docker.HeadingLength] Try to keep headings short (< 8 words). Raw Output: {"message": "[Docker.HeadingLength] Try to keep headings short (\u003c 8 words).", "location": {"path": "content/guides/docker-build-cloud/common-questions.md", "range": {"start": {"line": 54, "column": 5}}}, "severity": "INFO"}

Yes, Docker Build Cloud can be used with various CI platforms including GitHub
Actions, CircleCI, Jenkins, and others. It can speed up your build pipelines,
which means less time spent waiting and context switching.

Docker Build Cloud can be used with GitHub Actions to automate your build,
test, and deployment pipeline. Docker provides a set of official GitHub Actions
that you can use in your workflows.

Using GitHub Actions with Docker Build Cloud is straightforward. With a
one-line change in your GitHub Actions configuration, everything else stays the
same. You don't need to create new pipelines. Learn more in the [CI
documentation](/build-cloud/ci/) for Docker Build Cloud.

<div id="dbc-lp-survey-anchor"></div>
18 changes: 18 additions & 0 deletions content/guides/docker-build-cloud/dev.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
---
title: "Demo: set up and use Docker Build Cloud in development"
description: Learn how to use Docker Buld Cloud for local builds.
weight: 20
---

With Docker Build Cloud, you can easily shift the build workload from local machines
to the cloud, helping you achieve faster build times, especially for multi-platform builds.

In this demo, you'll see:

- How to setup the builder locally
- How to use Docker Build Cloud with Docker Compose
- How the image cache speeds up builds for others on your team

{{< youtube-embed "oPGq2AP5OtQ" >}}

<div id="dbc-lp-survey-anchor"></div>
27 changes: 27 additions & 0 deletions content/guides/docker-build-cloud/why.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
---
title: Why Docker Build Cloud?
description: Learn how Docker Build Cloud makes your builds faster.
weight: 10
---

Docker Build Cloud is a service that lets you build container images faster,
both locally and in CI. Builds run on cloud infrastructure optimally
dimensioned for your workloads, with no configuration required. The service
uses a remote build cache, ensuring fast builds anywhere and for all team
members.

Docker Build Cloud provides several benefits over local builds:

- Improved build speed
- Shared build cache
- Native multi-platform builds

There’s no need to worry about managing builders or infrastructure — simply
connect to your builders and start building. Each cloud builder provisioned to
an organization is completely isolated to a single Amazon EC2 instance, with a
dedicated EBS volume for build cache and encryption in transit. That means

Check warning on line 22 in content/guides/docker-build-cloud/why.md

View workflow job for this annotation

GitHub Actions / vale

[vale] reported by reviewdog 🐶 [Docker.Acronyms] 'EBS' has no definition. Raw Output: {"message": "[Docker.Acronyms] 'EBS' has no definition.", "location": {"path": "content/guides/docker-build-cloud/why.md", "range": {"start": {"line": 22, "column": 11}}}, "severity": "WARNING"}
there are no shared processes or data between cloud builders.

{{< youtube-embed "8AqKhEO2PQA" >}}

<div id="dbc-lp-survey-anchor"></div>
60 changes: 60 additions & 0 deletions content/guides/docker-compose/_index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,60 @@
---
title: Defining and running multi-container applications with Docker Compose
linkTitle: Docker Compose
summary: Simplify the process of defining, configuring, and running multi-container Docker applications to enable efficient development, testing, and deployment.
description: Learn how to use Docker Compose to define and run multi-container Docker applications.
levels: [beginner]
products: [compose]
params:
featured: true
image: images/learning-paths/compose.png
time: 10 minutes
resource_links:
- title: Overview of Docker Compose CLI
url: /compose/reference/
- title: Overview of Docker Compose
url: /compose/
- title: How Compose works
url: /compose/intro/compose-application-model/
- title: Using profiles with Compose
url: /compose/how-tos/profiles/
- title: Control startup and shutdown order with Compose
url: /compose/how-tos/startup-order/
- title: Compose Build Specification
url: /compose/compose-file/build/
---

Developers face challenges with multi-container Docker applications, including
complex configuration, dependency management, and maintaining consistent
environments. Networking, resource allocation, data persistence, logging, and
monitoring add to the difficulty. Security concerns and troubleshooting issues
further complicate the process, requiring effective tools and practices for
efficient management.

Docker Compose solves the problem of managing multi-container Docker
applications by providing a simple way to define, configure, and run all the
containers needed for an application using a single YAML file. This approach
helps developers to easily set up, share, and maintain consistent development,
testing, and production environments, ensuring that complex applications can be
deployed with all their dependencies and services properly configured and
orchestrated.

## What you’ll learn

- What Docker Compose is and what it does
- How to define services
- Use cases for Docker Compose
- How things would be different without Docker Compose

## Who’s this for?

- Developers and DevOps engineers who need to define, manage, and orchestrate
multi-container Docker applications efficiently across multiple environments.
- Development teams that want to increase productivity by streamlining
development workflows and reducing setup time.

## Tools integration

Works well with Docker CLI, CI/CD tools, and container orchestration tools.

<div id="compose-lp-survey-anchor"></div>
Loading

0 comments on commit 340b9a6

Please sign in to comment.