site: add dhi free to landing page

Signed-off-by: David Karlsson <35727626+dvdksn@users.noreply.github.com>
This commit is contained in:
David Karlsson
2025-12-17 09:44:55 +01:00
parent 3b63ec257d
commit fa4652c9ae
4 changed files with 168 additions and 386 deletions

View File

@@ -4,9 +4,7 @@
"classes": [
"--mount",
"--tmpfs",
"-mr-8",
"-mt-8",
"-pr-8",
"-top-10",
"-top-16",
"-v",
@@ -28,6 +26,8 @@
"Bake",
"Bash",
"Before",
"Before-DOI",
"Before-Wolfi",
"Bulk-users",
"CLI",
"CentOS-RHEL-and-Fedora",
@@ -118,10 +118,8 @@
"Old-Dockerfile",
"Other-providers",
"PHP",
"Post-rendering",
"PowerShell",
"PowerShell-CLI",
"Pre-rendering",
"Python",
"RHEL-8",
"RHEL-9",
@@ -172,7 +170,6 @@
"Without-systemd",
"[display:none]",
"absolute",
"active:border-2",
"admonition",
"admonition-content",
"admonition-danger",
@@ -182,7 +179,6 @@
"admonition-tip",
"admonition-title",
"admonition-warning",
"ask-ai-button",
"aspect-video",
"bake-action",
"bg-amber-500",
@@ -194,9 +190,6 @@
"bg-blue-500",
"bg-blue-600",
"bg-blue-700",
"bg-blue-800",
"bg-cyan-500",
"bg-gradient-to-r",
"bg-gray-100",
"bg-gray-400",
"bg-gray-50",
@@ -207,7 +200,6 @@
"bg-navbar-bg",
"bg-pattern-blue",
"bg-pattern-purple",
"bg-pattern-verde",
"bg-red-500",
"bg-violet-500",
"bg-white",
@@ -215,14 +207,10 @@
"border",
"border-0",
"border-1",
"border-2",
"border-b",
"border-b-4",
"border-blue",
"border-blue-300",
"border-blue-400",
"border-blue-500",
"border-cyan-400",
"border-divider-light",
"border-gray-100",
"border-gray-200",
@@ -231,10 +219,8 @@
"border-green-400",
"border-l-2",
"border-l-magenta-light",
"border-none",
"border-t",
"border-transparent",
"border-white",
"bottom-0",
"breadcrumbs",
"build-push-action",
@@ -257,7 +243,6 @@
"dark:bg-amber-400",
"dark:bg-background-dark",
"dark:bg-background-toc",
"dark:bg-blue",
"dark:bg-blue-400",
"dark:bg-blue-500",
"dark:bg-blue-800",
@@ -283,7 +268,6 @@
"dark:focus:ring-3-blue-dark",
"dark:hidden",
"dark:hover:bg-blue-400",
"dark:hover:bg-blue-500",
"dark:hover:bg-blue-700",
"dark:hover:bg-gray-600",
"dark:hover:bg-gray-900",
@@ -296,7 +280,6 @@
"dark:text-blue",
"dark:text-blue-700",
"dark:text-divider-dark",
"dark:text-gray",
"dark:text-gray-200",
"dark:text-gray-300",
"dark:text-gray-400",
@@ -323,11 +306,8 @@
"flex-shrink",
"flex-shrink-0",
"flex-wrap",
"focus:border-2",
"focus:border-blue-400",
"focus:outline-none",
"focus:ring",
"focus:ring-2",
"focus:ring-3-blue-light",
"focus:ring-blue-400",
"font-bold",
@@ -338,11 +318,8 @@
"footnote-backref",
"footnote-ref",
"footnotes",
"from-blue-500",
"from-cyan-400",
"gap-0",
"gap-1",
"gap-12",
"gap-2",
"gap-2.5",
"gap-20",
@@ -362,44 +339,34 @@
"h-48",
"h-5",
"h-6",
"h-64",
"h-8",
"h-[42px]",
"h-[calc(100vh-64px)]",
"h-fit",
"h-full",
"h-max",
"h-screen",
"hidden",
"hidden'",
"highlight",
"hover:bg-blue-300",
"hover:bg-blue-400",
"hover:bg-blue-50",
"hover:bg-blue-500",
"hover:bg-blue-600",
"hover:bg-blue-800",
"hover:bg-cyan-400",
"hover:bg-gray-100",
"hover:bg-gray-200",
"hover:bg-gray-50",
"hover:border-blue-300",
"hover:border-blue-400",
"hover:border-white/20",
"hover:dark:bg-gray-800",
"hover:dark:text-blue-400",
"hover:dark:text-blue-700",
"hover:opacity-80",
"hover:opacity-90",
"hover:scale-105",
"hover:shadow-[0_0_30px_rgba(147,51,234,0.6)]",
"hover:shadow-[0_0_30px_rgba(34,211,238,0.5)]",
"hover:text-blue",
"hover:underline",
"icon-lg",
"icon-md",
"icon-sm",
"icon-svg",
"icon-svg-stroke",
"inline",
"inline-block",
"inline-flex",
@@ -433,8 +400,6 @@
"lg:max-w-xl",
"lg:no-underline",
"lg:pb-2",
"lg:scale-100",
"lg:w-full",
"link",
"links",
"lntable",
@@ -463,7 +428,6 @@
"md:h-[calc(100vh-64px)]",
"md:hidden",
"md:max-w-[66%]",
"md:scale-100",
"md:sticky",
"md:text-base",
"md:text-sm",
@@ -486,6 +450,7 @@
"mt-4",
"mt-8",
"mt-[2px]",
"mt-auto",
"mx-1",
"mx-auto",
"my-0",
@@ -509,7 +474,6 @@
"outline-1",
"outline-gray-200",
"outline-hidden",
"outline-none",
"outline-offset-[-1px]",
"overflow-clip",
"overflow-hidden",
@@ -537,17 +501,17 @@
"pr-2",
"prose",
"pt-2",
"pt-20",
"pt-4",
"px-1",
"px-2",
"px-3",
"px-4",
"px-6",
"px-8",
"py-0.5",
"py-1",
"py-2",
"py-2.5",
"py-20",
"py-3",
"py-4",
"py-8",
"py-[0.5625rem]",
@@ -555,7 +519,6 @@
"right-0",
"right-2",
"right-8",
"ring",
"ring-3-2",
"ring-3-[1.5px]",
"ring-3-blue-light-400",
@@ -566,9 +529,7 @@
"rounded-lg",
"rounded-md",
"rounded-sm",
"rounded-xl",
"scale-50",
"scale-75",
"scroll-mt-2",
"scroll-mt-20",
"scroll-mt-36",
@@ -580,12 +541,6 @@
"self-center",
"self-start",
"shadow",
"shadow-[0_0_20px_rgba(147,51,234,0.4)]",
"shadow-[0_0_20px_rgba(34,211,238,0.3)]",
"shadow-black",
"shadow-blue-800",
"shadow-gray-600",
"shadow-lg",
"shadow-md",
"shimmer",
"sm:block",
@@ -609,10 +564,8 @@
"text-base",
"text-black",
"text-blue",
"text-blue-600",
"text-blue-light",
"text-divider-light",
"text-gray",
"text-gray-200",
"text-gray-300",
"text-gray-400",
@@ -627,8 +580,6 @@
"text-white",
"text-xl",
"text-xs",
"to-blue-600",
"to-purple-600",
"toc",
"top-0",
"top-1",
@@ -636,12 +587,9 @@
"top-6",
"topbar-button",
"transition",
"transition-all",
"transition-colors",
"transition-opacity",
"transition-transform",
"truncate",
"w-0",
"w-2",
"w-5",
"w-64",
@@ -653,7 +601,6 @@
"xl:flex",
"xl:flex-row",
"xl:grid-cols-3",
"xl:grid-cols-4",
"xl:mb-0",
"xl:w-[1200px]",
"youtube-video",

View File

@@ -1,319 +1,172 @@
<!doctype html>
<html lang="en">
<head>
{{ partial "head.html" . }}
</head>
<body
class="flex h-max flex-col bg-gray-50 text-base dark:bg-gray-950 dark:text-white"
>
<div class="absolute -z-10 w-full">
<svg
class="dark:hidden"
viewBox="0 0 1616 797"
fill="none"
xmlns="http://www.w3.org/2000/svg"
>
<path
d="M1066.69 797L0 136.789V0H1616V488.038L1066.69 797Z"
fill="#EFEFF2"
/>
</svg>
<svg
class="hidden dark:block"
viewBox="0 0 1616 797"
fill="none"
xmlns="http://www.w3.org/2000/svg"
>
<path
d="M1066.69 797L0 136.789V0H1616V488.038L1066.69 797Z"
fill="#080B0E"
fill-opacity="0.3"
/>
</svg>
</div>
{{ partial "header.html" . }}
<main class="flex min-h-screen w-full flex-col items-stretch self-center">
<div
class="flex w-full flex-col items-stretch gap-20 self-center px-4 py-20 xl:w-[1200px]"
>
<div
class="bg-pattern-blue relative overflow-hidden rounded-sm drop-shadow"
>
<div
class="flex h-full flex-col items-start justify-between gap-4 p-8"
>
<div class="flex items-center gap-2">
<span class="icon-svg text-blue dark:text-blue">
{{ partial "icon" "play_circle" }}</span
>
<h1 class="text-2xl">Get Docker</h1>
</div>
<p>
Learn how to install Docker for Mac, Windows, or Linux and explore
our developer tools.
</p>
<a
href="/get-started/get-docker/"
class="bg-blue mt-20 flex cursor-pointer items-center gap-2 rounded-sm p-2 px-4 text-white transition duration-300 hover:bg-blue-500 dark:bg-blue-500 dark:hover:bg-blue-400"
>
<span class="icon-svg">{{ partial "icon" "download" }}</span>
Get Docker
</a>
</div>
<div
class="absolute right-0 bottom-0 origin-bottom-right scale-50 lg:scale-100"
>
<img
class="dark:hidden"
alt="Low-fi desktop app"
src="/assets/images/app-wf-light-1.svg"
/>
<img
class="hidden dark:block"
alt="Low-fi desktop app"
src="/assets/images/app-wf-dark-1.svg"
/>
</div>
</div>
<head>
{{ partial "head.html" . }}
</head>
<div>
<div class="grid grid-cols-1 gap-4 lg:grid-cols-4">
<div>
<a class="h-full" href="/get-started/">
<div class="section-card">
<div class="flex items-center gap-4">
<span class="icon-svg text-blue dark:text-blue">
{{ partial "icon" "rocket" }}
</span>
<div>
<div class="section-card-title">Get started</div>
</div>
</div>
<div class="section-card-text">
Learn Docker basics and the benefits of containerization.
</div>
</div>
</a>
</div>
<body class="flex min-h-screen flex-col bg-gray-50 text-base dark:bg-gray-950 dark:text-white">
<div class="absolute -z-10 w-full">
<svg class="dark:hidden" viewBox="0 0 1616 797" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M1066.69 797L0 136.789V0H1616V488.038L1066.69 797Z" fill="#EFEFF2" />
</svg>
<svg class="hidden dark:block" viewBox="0 0 1616 797" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M1066.69 797L0 136.789V0H1616V488.038L1066.69 797Z" fill="#080B0E" fill-opacity="0.3" />
</svg>
</div>
{{ partial "header.html" . }}
<main class="flex w-full flex-col items-stretch gap-20 self-center pt-20">
<div class="grid w-full grid-cols-1 items-center gap-20 px-4 lg:grid-cols-2 xl:w-[1200px] self-center">
<div class="bg-pattern-blue relative overflow-hidden rounded-sm drop-shadow">
<div class="flex h-full flex-col items-start justify-between gap-4 px-8 py-4">
<div class="flex items-center gap-2">
<span class="icon-svg text-blue dark:text-blue">
{{ partial "icon" "play_circle" }}</span>
<h1 class="text-xl">Get Docker</h1>
</div>
<p>
Learn how to install Docker for Mac, Windows, or Linux and explore
our developer tools.
</p>
<a href="/get-started/get-docker/"
class="shadow bg-blue mt-20 flex cursor-pointer items-center gap-2 rounded-sm p-2 px-4 text-white transition duration-300 hover:bg-blue-500 dark:bg-blue-500 dark:hover:bg-blue-400">
<span class="icon-svg icon-sm">{{ partial "icon" "download" }}</span>
Get Docker
</a>
</div>
<div class="absolute right-0 bottom-0 origin-bottom-right scale-50">
<img class="dark:hidden" alt="Low-fi desktop app" src="/assets/images/app-wf-light-1.svg" />
<img class="hidden dark:block" alt="Low-fi desktop app" src="/assets/images/app-wf-dark-1.svg" />
</div>
</div>
<div class="h-full bg-pattern-purple rounded-sm drop-shadow">
<div class="flex h-full flex-col items-start gap-4 px-6 py-4">
<div class="flex flex-col gap-2">
<h2 class="text-xl">Docker Hardened Images, now free to use</h1>
</div>
<p>
Minimal, hardened base images with full transparency:
signed SBOMs, SLSA Level 3 provenance, and complete CVE
data.
</p>
<a href="/dhi/"
class="shadow bg-blue flex mt-auto cursor-pointer items-center gap-2 rounded-sm p-2 px-4 text-white transition duration-300 hover:bg-blue-500 dark:bg-blue-500 dark:hover:bg-blue-400">
Get started for free
</a>
</div>
</div>
</div>
<div>
<a class="h-full" href="/guides/">
<div class="section-card">
<div class="flex items-center gap-4">
<span class="icon-svg text-blue dark:text-blue">
{{ partial "icon" "developer_guide" }}
</span>
<div>
<div class="section-card-title">Guides</div>
</div>
</div>
<div class="section-card-text">
Learn how Docker can optimize your development workflows.
</div>
</div>
</a>
</div>
<div>
<div class="grid grid-cols-1 gap-4 lg:grid-cols-4 mx-auto px-4 xl:w-[1200px]">
<div>
<a class="h-full" href="/get-started/">
<div class="section-card">
<div class="flex items-center gap-4">
<span class="icon-svg text-blue dark:text-blue">
{{ partial "icon" "rocket" }}
</span>
<div>
<div class="section-card-title">Get started</div>
</div>
</div>
<div class="section-card-text">
Learn Docker basics and the benefits of containerization.
</div>
</div>
</a>
</div>
<div>
<a class="h-full" href="/manuals/">
<div class="section-card">
<div class="flex items-center gap-4">
<span class="icon-svg text-blue dark:text-blue">
{{ partial "icon" "description" }}
</span>
<div>
<div class="section-card-title">Manuals</div>
</div>
</div>
<div class="section-card-text">
Learn how to install, set up, configure, and use Docker
products.
</div>
</div>
</a>
</div>
<div>
<a class="h-full" href="/guides/">
<div class="section-card">
<div class="flex items-center gap-4">
<span class="icon-svg text-blue dark:text-blue">
{{ partial "icon" "developer_guide" }}
</span>
<div>
<div class="section-card-title">Guides</div>
</div>
</div>
<div class="section-card-text">
Learn how Docker can optimize your development workflows.
</div>
</div>
</a>
</div>
<div>
<a class="h-full" href="/reference/">
<div class="section-card">
<div class="flex items-center gap-4">
<span class="icon-svg text-blue dark:text-blue">
{{ partial "icon" "terminal" }}
</span>
<div>
<div class="section-card-title">Reference</div>
</div>
</div>
<div class="section-card-text">
Browse the CLI and API documentation.
</div>
</div>
</a>
</div>
</div>
</div>
<div>
<a class="h-full" href="/manuals/">
<div class="section-card">
<div class="flex items-center gap-4">
<span class="icon-svg text-blue dark:text-blue">
{{ partial "icon" "description" }}
</span>
<div>
<div class="section-card-title">Manuals</div>
</div>
</div>
<div class="section-card-text">
Learn how to install, set up, configure, and use Docker
products.
</div>
</div>
</a>
</div>
<div class="z-10 grid grid-cols-1 gap-20 lg:grid-cols-2">
<div class="bg-pattern-verde relative rounded-sm p-6 drop-shadow">
<div
class="flex h-full flex-col items-start justify-between gap-12"
>
<div class="flex flex-col gap-4">
<h2 class="font-medium">
Docker Hardened Images
{{ partial
"components/badge.html" (dict "color" "blue" "content" "New")
}}
</h2>
<p class="text-xl">
Secure, minimal, production-ready images with near-zero known CVEs.
</p>
</div>
<div class="flex flex-col items-start gap-4 xl:flex-row">
<a
href="/dhi/get-started/"
class="bg-blue dark:bg-blue rounded-sm p-2 px-4 text-white transition duration-300 hover:bg-blue-500 dark:hover:bg-blue-500"
>
Start your free trial
</a>
<a
href="https://hub.docker.com/hardened-images/catalog"
class="bg-blue dark:bg-blue rounded-sm p-2 px-4 text-white transition duration-300 hover:bg-blue-500 dark:hover:bg-blue-500"
>
Explore images
</a>
</div>
</div>
<div
class="absolute right-0 bottom-0 origin-bottom-right scale-75 md:scale-100"
>
<img
class="dark:hidden"
alt="Low-fi desktop app"
src="/assets/images/app-wf-light-2.svg"
/>
<img
class="hidden dark:block"
alt="Low-fi desktop app"
src="/assets/images/app-wf-dark-2.svg"
/>
</div>
</div>
<div class="bg-pattern-purple rounded-sm p-6">
<div class="flex flex-col gap-12">
<div class="flex flex-col gap-4">
<p class="text-xl">
Docker State of Application Development survey
</p>
<p>
Share your feedback and help us better understand and serve
the application development community. It will take just 20
minutes of your time. We want to know where you are
focused, what you are working on, and what is most
important to you.
</p>
<p>
You can save your progress and return at any time. As a
thank-you, you can opt into a raffle for Docker swag and
other prizes.
</p>
</div>
<div>
<a
href="https://docker.qualtrics.com/jfe/form/SV_1BIUSxxzRiXoS4S?SOURCE_URL=DOCSSITE"
class="bg-blue dark:bg-blue rounded-sm p-2 px-4 text-white transition duration-300 hover:bg-blue-500 dark:hover:bg-blue-500"
>Take the survey</a>
</div>
</div>
</div>
</div>
<div>
<a class="h-full" href="/reference/">
<div class="section-card">
<div class="flex items-center gap-4">
<span class="icon-svg text-blue dark:text-blue">
{{ partial "icon" "terminal" }}
</span>
<div>
<div class="section-card-title">Reference</div>
</div>
</div>
<div class="section-card-text">
Browse the CLI and API documentation.
</div>
</div>
</a>
</div>
</div>
</div>
<div>
<h2 class="mb-4 text-xl">Browse by section</h2>
<div
class="grid grid-cols-1 gap-4 md:grid-cols-2 lg:grid-cols-3 xl:grid-cols-4"
>
{{ range .Params.grid }}
<div>
<div class="section-card">
<div class="flex items-center gap-4">
<span class="icon-svg text-gray dark:text-gray"
>{{ partial "icon" .icon }}</span
>
<div>
<div class="section-card-title">{{ .title }}</div>
</div>
</div>
<div class="flex h-full flex-col justify-between gap-4">
<p>{{ .description | markdownify }}</p>
<nav class="flex flex-col gap-2">
{{ range .links }}
<div>
<span class="icon-svg text-gray dark:text-gray"
>{{ partial "icon" "arrow_right" }}</span
>
<a class="link" href="{{ .url }}">{{ .text }}</a>
</div>
{{ end }}
</nav>
</div>
</div>
</div>
{{ end }}
</div>
</div>
<div class="flex flex-col gap-4">
<h2 class="mb-4 text-xl">Browse by tag</h2>
<div class="flex flex-wrap gap-4">
{{ $tags := slice }}
{{- range site.Taxonomies.tags }}
{{ $tags = $tags | append .Page }}
{{ end }}
{{ partial "tags.html" $tags }}
</div>
</div>
</div>
<div
class="relative flex h-full items-center justify-center overflow-hidden bg-gray-100 py-8 md:h-[334px] dark:bg-gray-900">
<div class="w-[1200px] px-4">
<div class="flex max-w-full flex-col gap-8 md:max-w-[66%]">
<h2 class="text-2xl">Community resources</h2>
<p>
Find fellow Docker enthusiasts, engage in insightful discussions,
share knowledge, and collaborate on projects. Our communities
offer a rich online experience for developers to create valuable
connections that challenge and inspire!
</p>
<div class="flex flex-col gap-4 md:flex-row">
<a href="https://forums.docker.com/"
class="cursor-pointer rounded-sm bg-white px-4 py-2 hover:bg-gray-50 dark:bg-gray-500 dark:text-white dark:hover:bg-gray-600">
Visit Docker Forum
</a>
<a href="https://dockr.ly/comm-slack"
class="cursor-pointer rounded-sm bg-white px-4 py-2 hover:bg-gray-50 dark:bg-gray-500 dark:text-white dark:hover:bg-gray-600">
Join Docker Slack
</a>
<a href="https://www.docker.com/community/captains/"
class="cursor-pointer rounded-sm bg-white px-4 py-2 hover:bg-gray-50 dark:bg-gray-500 dark:text-white dark:hover:bg-gray-600">
Find your Docker Captain
</a>
</div>
</div>
</div>
<div class="absolute top-0 right-0 hidden md:block">
{{- (resources.Get "images/home-abstract-faint.svg").Content | safe.HTML -}}
</div>
</div>
</main>
<footer class="mt-auto">{{ partialCached "footer.html" . }}</footer>
</body>
<div
class="relative flex h-full items-center justify-center overflow-hidden bg-gray-100 py-8 md:h-[334px] dark:bg-gray-900"
>
<div class="w-[1200px] px-4">
<div class="flex max-w-full flex-col gap-8 md:max-w-[66%]">
<h2 class="text-2xl">Community resources</h2>
<p>
Find fellow Docker enthusiasts, engage in insightful discussions,
share knowledge, and collaborate on projects. Our communities
offer a rich online experience for developers to create valuable
connections that challenge and inspire!
</p>
<div class="flex flex-col gap-4 md:flex-row">
<a
href="https://forums.docker.com/"
class="cursor-pointer rounded-sm bg-white px-4 py-2 hover:bg-gray-50 dark:bg-gray-500 dark:text-white dark:hover:bg-gray-600"
>
Visit Docker Forum
</a>
<a
href="https://dockr.ly/comm-slack"
class="cursor-pointer rounded-sm bg-white px-4 py-2 hover:bg-gray-50 dark:bg-gray-500 dark:text-white dark:hover:bg-gray-600"
>
Join Docker Slack
</a>
<a
href="https://www.docker.com/community/captains/"
class="cursor-pointer rounded-sm bg-white px-4 py-2 hover:bg-gray-50 dark:bg-gray-500 dark:text-white dark:hover:bg-gray-600"
>
Find your Docker Captain
</a>
</div>
</div>
</div>
<div class="absolute top-0 right-0 hidden md:block">
{{- (resources.Get "images/home-abstract-faint.svg").Content | safe.HTML -}}
</div>
</div>
</main>
<footer>{{ partialCached "footer.html" . }}</footer>
</body>
</html>

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 6.8 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 40 KiB