diff --git a/COMPONENTS.md b/COMPONENTS.md index a1dcebbf0d..69eeef3751 100644 --- a/COMPONENTS.md +++ b/COMPONENTS.md @@ -60,6 +60,32 @@ params: --- ``` +### Series (guide) pages + +Section pages under `content/guides/` automatically use the `series` layout +(via a Hugo cascade in `hugo.yaml`). Series pages support additional front +matter parameters for the metadata card: + +```yaml +--- +title: Getting started +description: Learn the basics of Docker +summary: | + A longer summary shown on the series landing page. +params: + proficiencyLevel: Beginner + time: 15 minutes + prerequisites: None +--- +``` + +| Field | Description | +| ---------------- | ---------------------------------------- | +| summary | Extended description for the series page | +| proficiencyLevel | Skill level (Beginner, Intermediate) | +| time | Estimated time to complete | +| prerequisites | Prerequisites or "None" | + ## Shortcodes Shortcodes are reusable components that add rich functionality to your diff --git a/content/get-started/docker-concepts/building-images/_index.md b/content/get-started/docker-concepts/building-images/_index.md index a999122c4d..05d8c60789 100644 --- a/content/get-started/docker-concepts/building-images/_index.md +++ b/content/get-started/docker-concepts/building-images/_index.md @@ -13,9 +13,9 @@ summary: | deep dive into the secrets of images, how they are built and best practices. layout: series params: - skill: Beginner + proficiencyLevel: Beginner time: 25 minutes - prereq: None + prerequisites: None --- ## About this series diff --git a/content/get-started/introduction/_index.md b/content/get-started/introduction/_index.md index e7362a868b..a28300d3b4 100644 --- a/content/get-started/introduction/_index.md +++ b/content/get-started/introduction/_index.md @@ -12,9 +12,9 @@ summary: | commands, image creation, and container orchestration. layout: series params: - skill: Beginner + proficiencyLevel: Beginner time: 15 minutes - prereq: None + prerequisites: None aliases: - /guides/getting-started/ --- diff --git a/content/languages/_index.md b/content/languages/_index.md deleted file mode 100644 index 78fd6dd9e2..0000000000 --- a/content/languages/_index.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -cascade: - build: - render: never ---- - diff --git a/content/languages/c-sharp/_index.md b/content/languages/c-sharp/_index.md deleted file mode 100644 index a579a538ce..0000000000 --- a/content/languages/c-sharp/_index.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: C# -params: - icon: https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/csharp/csharp-original.svg ---- diff --git a/content/languages/cpp/_index.md b/content/languages/cpp/_index.md deleted file mode 100644 index f77781db89..0000000000 --- a/content/languages/cpp/_index.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: C++ -params: - icon: https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/cplusplus/cplusplus-original.svg ---- diff --git a/content/languages/go/_index.md b/content/languages/go/_index.md deleted file mode 100644 index b98a732a75..0000000000 --- a/content/languages/go/_index.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Go -params: - icon: https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/go/go-original.svg ---- diff --git a/content/languages/java/_index.md b/content/languages/java/_index.md deleted file mode 100644 index 302591c35a..0000000000 --- a/content/languages/java/_index.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Java -params: - icon: https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/java/java-original.svg ---- diff --git a/content/languages/js/_index.md b/content/languages/js/_index.md deleted file mode 100644 index 92ef7a7ff0..0000000000 --- a/content/languages/js/_index.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: JavaScript -params: - icon: https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/javascript/javascript-original.svg ---- diff --git a/content/languages/php/_index.md b/content/languages/php/_index.md deleted file mode 100644 index 03bf6baa77..0000000000 --- a/content/languages/php/_index.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: PHP -params: - icon: https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/php/php-original.svg ---- diff --git a/content/languages/python/_index.md b/content/languages/python/_index.md deleted file mode 100644 index 1e0a5bb338..0000000000 --- a/content/languages/python/_index.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Python -params: - icon: https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/python/python-original.svg ---- diff --git a/content/languages/r/_index.md b/content/languages/r/_index.md deleted file mode 100644 index c02712c12d..0000000000 --- a/content/languages/r/_index.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: R -params: - icon: https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/r/r-original.svg ---- diff --git a/content/languages/ruby/_index.md b/content/languages/ruby/_index.md deleted file mode 100644 index d99155828e..0000000000 --- a/content/languages/ruby/_index.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Ruby -params: - icon: https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/ruby/ruby-original.svg ---- diff --git a/content/languages/rust/_index.md b/content/languages/rust/_index.md deleted file mode 100644 index 80b981d535..0000000000 --- a/content/languages/rust/_index.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Rust -params: - icon: https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/rust/rust-original.svg ---- diff --git a/content/tags/_index.md b/content/tags/_index.md deleted file mode 100644 index 1568ead9fe..0000000000 --- a/content/tags/_index.md +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Tags -params: - icon: tag ---- - -Here you can browse Docker docs by tag. diff --git a/content/tags/admin/_index.md b/content/tags/admin/_index.md deleted file mode 100644 index 9f7ab9b1a9..0000000000 --- a/content/tags/admin/_index.md +++ /dev/null @@ -1,3 +0,0 @@ ---- -title: Administration ---- diff --git a/content/tags/ai/_index.md b/content/tags/ai/_index.md deleted file mode 100644 index d16578aa0f..0000000000 --- a/content/tags/ai/_index.md +++ /dev/null @@ -1,3 +0,0 @@ ---- -title: AI ---- diff --git a/content/tags/app-dev/_index.md b/content/tags/app-dev/_index.md deleted file mode 100644 index 2bea4fc70c..0000000000 --- a/content/tags/app-dev/_index.md +++ /dev/null @@ -1,3 +0,0 @@ ---- -title: App development ---- diff --git a/content/tags/best-practices/_index.md b/content/tags/best-practices/_index.md deleted file mode 100644 index ada8e2b9f6..0000000000 --- a/content/tags/best-practices/_index.md +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Best practices -description: Optimal patterns for Docker ---- - -Best practices articles describe methods and techniques that are generally -the most idiomatic and optimized way to do something. diff --git a/content/tags/cloud-services/_index.md b/content/tags/cloud-services/_index.md deleted file mode 100644 index 2f57b23d5a..0000000000 --- a/content/tags/cloud-services/_index.md +++ /dev/null @@ -1,3 +0,0 @@ ---- -title: Cloud services ---- diff --git a/content/tags/data-science/_index.md b/content/tags/data-science/_index.md deleted file mode 100644 index 7926e09730..0000000000 --- a/content/tags/data-science/_index.md +++ /dev/null @@ -1,3 +0,0 @@ ---- -title: Data science ---- diff --git a/content/tags/databases/_index.md b/content/tags/databases/_index.md deleted file mode 100644 index 51607bd691..0000000000 --- a/content/tags/databases/_index.md +++ /dev/null @@ -1,3 +0,0 @@ ---- -title: Databases ---- diff --git a/content/tags/deploy/_index.md b/content/tags/deploy/_index.md deleted file mode 100644 index d93db5d491..0000000000 --- a/content/tags/deploy/_index.md +++ /dev/null @@ -1,3 +0,0 @@ ---- -title: Deployment ---- diff --git a/content/tags/devops/_index.md b/content/tags/devops/_index.md deleted file mode 100644 index 2d9ad18674..0000000000 --- a/content/tags/devops/_index.md +++ /dev/null @@ -1,3 +0,0 @@ ---- -title: DevOps ---- diff --git a/content/tags/dhi/_index.md b/content/tags/dhi/_index.md deleted file mode 100644 index c1d74b1c1f..0000000000 --- a/content/tags/dhi/_index.md +++ /dev/null @@ -1,3 +0,0 @@ ---- -title: Docker Hardened Images ---- diff --git a/content/tags/distributed-systems/_index.md b/content/tags/distributed-systems/_index.md deleted file mode 100644 index ce0470da6d..0000000000 --- a/content/tags/distributed-systems/_index.md +++ /dev/null @@ -1,3 +0,0 @@ ---- -title: Distributed systems ---- diff --git a/content/tags/faq/_index.md b/content/tags/faq/_index.md deleted file mode 100644 index 861ac65830..0000000000 --- a/content/tags/faq/_index.md +++ /dev/null @@ -1,8 +0,0 @@ ---- -title: FAQ -description: Frequently asked questions ---- - -FAQs contain frequently asked questions about all things Docker, from accounts -and administration to organization management, Docker Desktop, Docker Compose, -and more. diff --git a/content/tags/frameworks/_index.md b/content/tags/frameworks/_index.md deleted file mode 100644 index e8bd2590f9..0000000000 --- a/content/tags/frameworks/_index.md +++ /dev/null @@ -1,3 +0,0 @@ ---- -title: Frameworks ---- diff --git a/content/tags/networking/_index.md b/content/tags/networking/_index.md deleted file mode 100644 index e5573002b6..0000000000 --- a/content/tags/networking/_index.md +++ /dev/null @@ -1,3 +0,0 @@ ---- -title: Networking ---- diff --git a/content/tags/observability/_index.md b/content/tags/observability/_index.md deleted file mode 100644 index 19d027311a..0000000000 --- a/content/tags/observability/_index.md +++ /dev/null @@ -1,3 +0,0 @@ ---- -title: Observability ---- diff --git a/content/tags/product-demo/_index.md b/content/tags/product-demo/_index.md deleted file mode 100644 index de46c1a377..0000000000 --- a/content/tags/product-demo/_index.md +++ /dev/null @@ -1,3 +0,0 @@ ---- -title: Product demo ---- diff --git a/content/tags/release-notes/_index.md b/content/tags/release-notes/_index.md deleted file mode 100644 index 3cafaa0a4f..0000000000 --- a/content/tags/release-notes/_index.md +++ /dev/null @@ -1,10 +0,0 @@ ---- -title: Release notes -icon: note_stack_add -description: Find out about the latest features -aliases: -- /release-notes/ ---- - -Release notes describe corrections, changes or enhancements made to a product -product in a given release. diff --git a/content/tags/secrets/_index.md b/content/tags/secrets/_index.md deleted file mode 100644 index f1e0375290..0000000000 --- a/content/tags/secrets/_index.md +++ /dev/null @@ -1,10 +0,0 @@ ---- -title: Secrets -description: Use sensitive information in containers securely ---- - -A secret is a piece of data, such as a password, SSH private key, SSL -certificate, or anything that should not be transmitted over a network or -stored unencrypted in a Dockerfile or in your application's source code. - -Docker provides specially designated features for managing secrets. diff --git a/content/tags/troubleshooting/_index.md b/content/tags/troubleshooting/_index.md deleted file mode 100644 index 47f17d79c3..0000000000 --- a/content/tags/troubleshooting/_index.md +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Troubleshooting -description: Fix common issues ---- - -Troubleshooting articles contain guidelines for solving common problems and -pitfalls that you might encounter with Docker products. diff --git a/data/languages.yaml b/data/languages.yaml new file mode 100644 index 0000000000..c3cae399d1 --- /dev/null +++ b/data/languages.yaml @@ -0,0 +1,30 @@ +c-sharp: + title: "C#" + icon: https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/csharp/csharp-original.svg +cpp: + title: C++ + icon: https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/cplusplus/cplusplus-original.svg +go: + title: Go + icon: https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/go/go-original.svg +java: + title: Java + icon: https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/java/java-original.svg +js: + title: JavaScript + icon: https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/javascript/javascript-original.svg +php: + title: PHP + icon: https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/php/php-original.svg +python: + title: Python + icon: https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/python/python-original.svg +r: + title: R + icon: https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/r/r-original.svg +ruby: + title: Ruby + icon: https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/ruby/ruby-original.svg +rust: + title: Rust + icon: https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/rust/rust-original.svg diff --git a/data/tags.yaml b/data/tags.yaml new file mode 100644 index 0000000000..7a15baf22e --- /dev/null +++ b/data/tags.yaml @@ -0,0 +1,38 @@ +admin: + title: Administration +ai: + title: AI +app-dev: + title: App development +best-practices: + title: Best practices +cloud-services: + title: Cloud services +data-science: + title: Data science +databases: + title: Databases +deploy: + title: Deployment +devops: + title: DevOps +dhi: + title: Docker Hardened Images +distributed-systems: + title: Distributed systems +faq: + title: FAQ +frameworks: + title: Frameworks +networking: + title: Networking +observability: + title: Observability +product-demo: + title: Product demo +release-notes: + title: Release notes +secrets: + title: Secrets +troubleshooting: + title: Troubleshooting diff --git a/hugo.yaml b/hugo.yaml index 2193d24623..1de3c9ebab 100644 --- a/hugo.yaml +++ b/hugo.yaml @@ -8,9 +8,7 @@ disableHugoGeneratorInject: true ignoreLogs: - cascade-pattern-with-extension -taxonomies: - tag: tags - language: languages +taxonomies: {} # Remove the /manuals prefix for content in the manuals section permalinks: @@ -92,10 +90,6 @@ outputs: section: - html - markdown - taxonomy: - - html - term: - - html languages: en: diff --git a/layouts/_partials/aside.html b/layouts/_partials/aside.html index 6542d63643..bed195c708 100644 --- a/layouts/_partials/aside.html +++ b/layouts/_partials/aside.html @@ -5,11 +5,4 @@
{{ partialCached "pagemeta.html" . . }}
- {{- if ne .Type "guides" }} - {{ with .GetTerms "tags" }} -
- {{- partial "tags.html" . }} -
- {{- end }} -{{- end }} - \ No newline at end of file + diff --git a/layouts/_partials/components/guide-summary.html b/layouts/_partials/components/guide-summary.html deleted file mode 100644 index 458bf9645b..0000000000 --- a/layouts/_partials/components/guide-summary.html +++ /dev/null @@ -1,18 +0,0 @@ -
-
-
- Skill level - {{ .Params.skill }} -
-
- Time to complete - {{ .Params.time }} -
-
- Prerequisites - {{ .Params.prereq }} -
-
-
diff --git a/layouts/_partials/content-default.html b/layouts/_partials/content-default.html index f47a11f743..9a021cb602 100644 --- a/layouts/_partials/content-default.html +++ b/layouts/_partials/content-default.html @@ -12,6 +12,17 @@
{{ .Content }} + {{- if and (eq .Type "guides") (not .IsSection) (ne .CurrentSection .FirstSection) -}} + {{- with .PrevInSection -}} +
+ {{ .Title }} » +
+ {{- end -}} + {{- end -}} diff --git a/layouts/glossary.html b/layouts/glossary.html index cc4da2ee3b..96660152fe 100644 --- a/layouts/glossary.html +++ b/layouts/glossary.html @@ -1,8 +1,3 @@ -{{ define "left" }} - {{ partial "sidebar/mainnav.html" . }} - {{ partial "sidebar/sections.html" . }} -{{ end }} - {{ define "main" }} {{ partial "breadcrumbs.html" . }}
diff --git a/layouts/guides/landing.html b/layouts/guides/landing.html index 03501c9e40..f71aaea091 100644 --- a/layouts/guides/landing.html +++ b/layouts/guides/landing.html @@ -40,7 +40,7 @@ >
Tags
- {{- range $name, $taxonomy := where site.Taxonomies.tags ".Page.Section" "guides" }} + {{- range $name, $data := site.Data.tags }} {{- $id := anchorize (fmt.Printf "tag-%s" $name) }}
{{ $data.title }}
{{ end }}
Languages
- {{- range $name, $taxonomy := where site.Taxonomies.languages ".Page.Type" "guides" }} + {{- range $name, $data := site.Data.languages }} {{- $id := anchorize (fmt.Printf "lang-%s" $name) }} {{ end }}
@@ -189,12 +189,12 @@

- {{- range $name, $taxonomy := site.Taxonomies.tags }} + {{- range $name, $data := site.Data.tags }}
- {{ template "termchip" $taxonomy.Page.LinkTitle }} + {{ template "termchip" $data.title }}
{{- end }} - {{- range $name, $taxonomy := site.Taxonomies.languages }} + {{- range $name, $data := site.Data.languages }}
- {{ .Page.LinkTitle }} + {{ $data.title }}
{{- end }}
@@ -241,11 +241,11 @@ class="flex items-center justify-between gap-8 text-sm text-gray-400 dark:text-gray-300" >
- {{- $langs := .GetTerms "languages" }} - {{ partial "languages" $langs }} - {{- $tags := .GetTerms "tags" }} - {{- range $tags }} - {{ template "termchip" .Page.LinkTitle }} + {{- with .Params.languages }} + {{ partial "guide-languages.html" . }} + {{- end }} + {{- with .Params.tags }} + {{ partial "guide-tags.html" . }} {{- end }}
{{- with .Params.time }} diff --git a/layouts/guides/list.html b/layouts/guides/list.html index cc1fd07232..fd2093b64c 100644 --- a/layouts/guides/list.html +++ b/layouts/guides/list.html @@ -1,8 +1,3 @@ -{{ define "left" }} - {{ partial "sidebar/mainnav.html" . }} - {{ partial "sidebar/guides.html" . }} -{{ end }} - {{ define "main" }}
{{ partial "breadcrumbs.html" . }} @@ -14,7 +9,7 @@ {{ .Content }} {{ partial "heading.html" (dict "text" "Modules" "level" 2) }}
    - {{- range $i, $e := .Pages }} + {{- range .Pages }}
  1. {{ .LinkTitle }}

    {{ plainify .Description }}

    diff --git a/layouts/guides/single.html b/layouts/guides/single.html deleted file mode 100644 index 27940dee77..0000000000 --- a/layouts/guides/single.html +++ /dev/null @@ -1,21 +0,0 @@ -{{ define "left" }} - {{ partial "sidebar/mainnav.html" . }} - {{ partial "sidebar/guides.html" . }} -{{ end }} - -{{ define "main" }} - {{ partial "content-default.html" . }} -
    - {{ if (.Store.Get "multipage") }} - {{- with .PrevInSection }} - - {{- end }} - {{- end }} -
    -{{ end }} diff --git a/layouts/home.metadata.json b/layouts/home.metadata.json index acfaf21f2b..aafcee28c7 100644 --- a/layouts/home.metadata.json +++ b/layouts/home.metadata.json @@ -4,8 +4,11 @@ {{- $desc := partialCached "utils/description.html" . . -}} {{- $kwd := partialCached "utils/keywords.html" . . -}} {{- $tags := slice -}} - {{- range (.GetTerms "tags") -}} - {{ $tags = $tags | append .LinkTitle }} + {{- range (.Params.tags | default slice) -}} + {{- $tagData := index site.Data.tags . -}} + {{- with $tagData -}} + {{ $tags = $tags | append .title }} + {{- end -}} {{- end -}} {{- jsonify (dict "url" .Permalink "title" $title "description" $desc "keywords" $kwd "tags" $tags) -}}, {{- end -}} diff --git a/layouts/samples/single.html b/layouts/samples/single.html index 29142d0642..0b03d6d9ef 100644 --- a/layouts/samples/single.html +++ b/layouts/samples/single.html @@ -1,8 +1,3 @@ -{{ define "left" }} - {{ partial "sidebar/mainnav.html" . }} - {{ partial "sidebar/sections.html" . }} -{{ end }} - {{ define "main" }} {{ partial "breadcrumbs.html" . }}
    diff --git a/layouts/series.html b/layouts/series.html index 498e05ec29..40bfea0b73 100644 --- a/layouts/series.html +++ b/layouts/series.html @@ -3,14 +3,39 @@

    {{ .Title }}

    {{ .Summary }}
    - {{ partial "components/guide-summary.html" . }} + {{- if or .Params.proficiencyLevel .Params.time .Params.prerequisites }} +
    +
    + {{- with .Params.proficiencyLevel }} +
    + Skill level + {{ . }} +
    + {{- end }} + {{- with .Params.time }} +
    + Time to complete + {{ . }} +
    + {{- end }} + {{- with .Params.prerequisites }} +
    + Prerequisites + {{ . }} +
    + {{- end }} +
    +
    + {{- end }} {{ .Content }} {{ partial "heading.html" (dict "text" "Modules" "level" 2) }} - {{ range $i, $e := .Pages }} - {{ $o := compare.Conditional (eq $i 0) true false }} - {{ $t := fmt.Printf "%d. %s" (add $i 1) $e.Title }} - {{ $b := fmt.Printf "%s\n\n{{< button url=`%s` text=`%s` >}}" $e.Summary $e.Permalink "Start" }} - {{ partial "components/accordion.html" (dict "large" true "open" $o "title" $t "body" $b) }} - {{ end }} +
      + {{- range .Pages }} +
    1. + {{ .LinkTitle }} +

      {{ plainify .Description }}

      +
    2. + {{- end }} +
    {{ end }} diff --git a/layouts/tags/taxonomy.html b/layouts/tags/taxonomy.html deleted file mode 100644 index c1dc1a5b37..0000000000 --- a/layouts/tags/taxonomy.html +++ /dev/null @@ -1,25 +0,0 @@ -{{ define "left" }} - {{ partial "sidebar/mainnav.html" . }} - {{ partial "sidebar/tags.html" . }} -{{ end }} - -{{ define "main" }} -
    - {{ partial "breadcrumbs.html" . }} -

    - {{ partialCached "icon" "tag" "tag" }} - {{ .Title }} -

    - {{ .Content }} -
      - {{ range site.Taxonomies.tags }} -
    • - {{ .Page.Title }} - ({{ (len .Pages) }} {{ cond (gt (len .Pages) 1) "pages" "page" }}) -
    • - {{ end }} -
    -
    -{{ end }} diff --git a/layouts/tags/term.html b/layouts/tags/term.html deleted file mode 100644 index c23440e32d..0000000000 --- a/layouts/tags/term.html +++ /dev/null @@ -1,25 +0,0 @@ -{{ define "left" }} - {{ partial "sidebar/mainnav.html" . }} - {{ partial "sidebar/tags.html" . }} -{{ end }} - -{{ define "main" }} -
    - {{ partial "breadcrumbs.html" . }} -

    - {{ partialCached "icon" "tag" "tag" }} - {{ .Title }} -

    - {{ .Content }} - {{- range .Pages.GroupBy "Type" }} -

    {{ (site.GetPage .Key).LinkTitle }}

    - - {{- end }} -
    -{{ end }}