mirror of https://github.com/crossplane/docs.git
base template overrides for index page
This commit is contained in:
parent
5de3837ac9
commit
31a2b15c53
|
@ -0,0 +1,387 @@
|
||||||
|
<div id="content">
|
||||||
|
<div id="jumbotron">
|
||||||
|
<div>
|
||||||
|
<div class="grid">
|
||||||
|
<div class="col-5_md-12 main">
|
||||||
|
<div>
|
||||||
|
<h1>The cloud native control plane framework</h1>
|
||||||
|
<p>
|
||||||
|
Build control planes without needing to write code. Crossplane has a
|
||||||
|
highly extensible backend that enables you to orchestrate
|
||||||
|
applications and infrastructure no matter where they run, and a
|
||||||
|
highly configurable frontend that lets you define the declarative
|
||||||
|
API it offers.
|
||||||
|
</p>
|
||||||
|
<button id="getStarted" onclick="window.location.href='{{ .Site.Params.githubLink }}'">
|
||||||
|
<img src="{{ "/images/github-teal.svg" | absURL }}" alt="Github Logo" />
|
||||||
|
<span>Get Started on GitHub</span>
|
||||||
|
</button>
|
||||||
|
<button id="joinSlack" onclick="window.location.href='{{ .Site.Params.slackLink }}'">
|
||||||
|
<img src="{{ "/images/slack-white.svg" | absURL }}" / alt="Slack Logo" >
|
||||||
|
<span>Join Slack Channel</span>
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="col-7_md-12_md-first hero">
|
||||||
|
<div>
|
||||||
|
<img class="img" src="{{ "/images/hero.webp" | absURL }}" srcset="{{ "/images/hero.webp" | absURL }} 1x, {{ "/images/hero@2x.webp" | absURL }} 2x, {{ "/images/hero@3x.webp" | absURL }} 3x" alt="Crossplane hero image" />
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div id="useCases1" class="use-cases">
|
||||||
|
<div>
|
||||||
|
<div class="grid">
|
||||||
|
<div class="col-6_md-12_md-first">
|
||||||
|
<img src="{{ "/images/feature-4.webp" | absURL }}" srcset="{{ "/images/feature-4.webp" | absURL }} 1x, {{ "/images/feature-4@2x.webp" | absURL }} 2x, {{ "/images/feature-4@3x.webp" | absURL }} 3x"
|
||||||
|
alt="Provision and manage cloud infrastructure" />
|
||||||
|
</div>
|
||||||
|
<div class="col-6_md-12">
|
||||||
|
<h2>Don’t start from scratch</h2>
|
||||||
|
<p>
|
||||||
|
The best platforms are built on control planes, but historically
|
||||||
|
building a control plane has required writing code—a lot of code. With
|
||||||
|
Crossplane you can build a control plane tailored to your unique needs
|
||||||
|
in days, not months, without writing tricky distributed systems code.
|
||||||
|
<img src="{{ "/images/quad-teal-medium.svg" | absURL }}" alt="Design element" />
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div id="createdBy">
|
||||||
|
<div>
|
||||||
|
<div class="grid">
|
||||||
|
<div class="col-12">
|
||||||
|
<img src="{{ "/images/stacks.webp" | absURL }}" srcset="{{ "/images/stacks.webp" | absURL }} 1x, {{ "/images/stacks@2x.webp" | absURL }} 2x, {{ "/images/stacks@3x.webp" | absURL }} 3x"
|
||||||
|
alt="Stacks" id="stacksImg" />
|
||||||
|
<h2>Created to power open platforms</h2>
|
||||||
|
<p>
|
||||||
|
We built Crossplane to help organizations build their platforms like
|
||||||
|
the cloud vendors build theirs—with control planes. Crossplane is an
|
||||||
|
open source, CNCF project built on the foundation of Kubernetes to
|
||||||
|
orchestrate anything. Encapsulate policies, permissions, and other
|
||||||
|
guardrails behind a custom API line to enable your customers to
|
||||||
|
self-service without needing to become an infrastructure expert.
|
||||||
|
</p>
|
||||||
|
<a href="{{ .Site.Params.upboundLink }}">Learn more about how Upbound is helping build a more open cloud</a>
|
||||||
|
<img src="{{ "/images/created-by.png" | absURL }}" srcset="{{ "/images/created-by.png" | absURL }} 1x, {{ "/images/created-by@2x.png" | absURL }} 2x, {{ "/images/created-by@3x.png" | absURL }} 3x"
|
||||||
|
alt="Created By Upbound" />
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div id="useCases2" class="use-cases">
|
||||||
|
<div>
|
||||||
|
<div class="grid">
|
||||||
|
<div class="col-6_md-12">
|
||||||
|
<h2>Extensible by Design</h2>
|
||||||
|
<p>
|
||||||
|
Crossplane is designed from the ground up with extension in mind. From
|
||||||
|
Providers that extend Crossplane to orchestrate new kinds of
|
||||||
|
applications and infrastructure, to Configurations that extend
|
||||||
|
Crossplane to expose new APIs, our community will help you find what
|
||||||
|
you need to build your ideal control plane. Interested in building
|
||||||
|
your own extensions?
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
<a href="{{ .Site.Params.slackLink }}">Join the Crossplane Slack Channel</a>
|
||||||
|
</p>
|
||||||
|
<p><img src="{{ "/images/quad-red-medium.svg" | absURL }}" alt="Design element" /></p>
|
||||||
|
</div>
|
||||||
|
<div class="col-6_md-12_md-first img">
|
||||||
|
<img src="{{ "/images/flavors.svg" | absURL }}" alt="Logos for AWS, Google Cloud, Red Hat, Alibaba Cloud, Microsoft Azure" />
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="grid">
|
||||||
|
<div class="col-6_md-12 img">
|
||||||
|
<img src="{{ "/images/feature-1.webp" | absURL }}" srcset="{{ "/images/feature-1.webp" | absURL }} 1x, {{ "/images/feature-1@2x.webp" | absURL }} 2x, {{ "/images/feature-1@3x.webp" | absURL }} 3x"
|
||||||
|
alt="Compose infrastructure for your applications" />
|
||||||
|
</div>
|
||||||
|
<div class="col-6_md-12">
|
||||||
|
<h2>Putting you in control</h2>
|
||||||
|
<p>
|
||||||
|
Most platforms require that you buy into their opinionated API
|
||||||
|
concepts. With Crossplane you can build a platform around your own
|
||||||
|
opinions. We know the best control planes are tailored to the task at
|
||||||
|
hand so we designed Crossplane as a framework that puts you in
|
||||||
|
control. Use Crossplane to design a control plane that exposes
|
||||||
|
declarative APIs tailored to your unique orchestration needs.
|
||||||
|
<img src="{{ "/images/quad-teal-medium.svg" | absURL }}" alt="Design element" />
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="grid">
|
||||||
|
<div class="col-6_md-12">
|
||||||
|
<h2>Control planes - the future of cloud</h2>
|
||||||
|
<p>
|
||||||
|
The cloud vendors have been building with control planes for years.
|
||||||
|
Now Crossplane helps you do the same. Control planes are
|
||||||
|
self-healing—they automatically correct drift. Consumers can
|
||||||
|
self-service fast because control planes offer a single point of
|
||||||
|
control for policy and permissions and control planes integrate easily
|
||||||
|
with other systems because they expose an API, not just a
|
||||||
|
command-line.
|
||||||
|
</p>
|
||||||
|
<p><img src="{{ "/images/quad-red-medium.svg" | absURL }}" alt="Design element" /></p>
|
||||||
|
</div>
|
||||||
|
<div class="col-6_md-12_md-first img">
|
||||||
|
<img src="{{ "/images/feature-2.webp" | absURL }}" srcset="{{ "/images/feature-2.webp" | absURL }} 1x, {{ "/images/feature-2@2x.webp" | absURL }} 2x, {{ "/images/feature-2@3x.webp" | absURL }} 3x" alt="Manage complete applications with the Open Application Model" />
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="grid">
|
||||||
|
<div class="col-6_md-12 img">
|
||||||
|
<img src="{{ "/images/feature-3.webp" | absURL }}" srcset="{{ "/images/feature-3.webp" | absURL }} 1x, {{ "/images/feature-3@2x.webp" | absURL }} 2x, {{ "/images/feature-3@3x.webp" | absURL }} 3x"
|
||||||
|
alt="Run Crossplane anywhere" />
|
||||||
|
</div>
|
||||||
|
<div class="col-6_md-12">
|
||||||
|
<h2>Built on a Solid Foundation</h2>
|
||||||
|
<p>
|
||||||
|
Crossplane builds on the class leading Kubernetes control plane,
|
||||||
|
extending its battle hardened reliability and security features like
|
||||||
|
Role Based Access Control (RBAC) to orchestrate everything - not just
|
||||||
|
containers. Because Crossplane shares a foundation with Kubernetes it
|
||||||
|
integrates smoothly with most popular cloud native tools.
|
||||||
|
<img src="{{ "/images/quad-teal-medium.svg" | absURL }}" alt="Design element" />
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div id="nativeCommunity">
|
||||||
|
<div>
|
||||||
|
<div class="grid">
|
||||||
|
<div class="col-12">
|
||||||
|
<h2>Started by Upbound and adopted by the Cloud Native community</h2>
|
||||||
|
<div class="community-row">
|
||||||
|
<div class="logo-wrapper">
|
||||||
|
<img src="{{ "/images/upbound-logo.svg" | absURL }}" alt="Upbound" />
|
||||||
|
</div>
|
||||||
|
<div class="logo-wrapper">
|
||||||
|
<img src="{{ "/images/alibaba.svg" | absURL }}" alt="Alibaba Group" />
|
||||||
|
</div>
|
||||||
|
<div class="logo-wrapper">
|
||||||
|
<img src="{{ "/images/redhat-horizontal.svg" | absURL }}" alt="Redhat" />
|
||||||
|
</div>
|
||||||
|
<div class="logo-wrapper">
|
||||||
|
<img src="{{ "/images/gitlab.svg" | absURL }}" alt="GitLab" />
|
||||||
|
</div>
|
||||||
|
<div class="logo-wrapper">
|
||||||
|
<img src="{{ "/images/microsoft.svg" | absURL }}" alt="Microsoft" />
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="visit-upbound">
|
||||||
|
<a href="https://www.upbound.io">Visit upbound.io to learn more about how Crossplane is being used to accelerate cloud-native transformation</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div id="blueprint">
|
||||||
|
<div class="blueprint-header">
|
||||||
|
<h2>Why use Crossplane to build control planes?</h2>
|
||||||
|
<img src="{{ "/images/teal.svg" | absURL }}" alt="Design element" />
|
||||||
|
</div>
|
||||||
|
<div class="grid">
|
||||||
|
<div class="blueprint-items col-6_md-12 grid">
|
||||||
|
<div class="blueprint-bullet col-1_xs-2">
|
||||||
|
<img src="{{ "/images/declarative.svg" | absURL }}" alt="Icon" />
|
||||||
|
</div>
|
||||||
|
<div class="blueprint-item col-11_xs-10">
|
||||||
|
<h3>Declarative configuration</h3>
|
||||||
|
<p>
|
||||||
|
Crossplane lets you build a control plane with Kubernetes-style
|
||||||
|
declarative and API-driven configuration and management for anything.
|
||||||
|
Through this approach, applications and infrastructure managed through
|
||||||
|
your control plane are self-healing right out of the box.
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
<div class="blueprint-bullet col-1_xs-2">
|
||||||
|
<img src="{{ "/images/unify.svg" | absURL }}" alt="Icon" />
|
||||||
|
</div>
|
||||||
|
<div class="blueprint-item col-11_xs-10">
|
||||||
|
<h3>Unify application and infrastructure configuration and deployment</h3>
|
||||||
|
<p>
|
||||||
|
Crossplane enables application and infrastructure configuration to
|
||||||
|
co-exist in the same control plane, reducing the complexity of
|
||||||
|
your toolchains and deployment pipelines.
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
<div class="blueprint-bullet col-1_xs-2">
|
||||||
|
<img src="{{ "/images/source.svg" | absURL }}" alt="Icon" />
|
||||||
|
</div>
|
||||||
|
<div class="blueprint-item col-11_xs-10">
|
||||||
|
<h3>One source of truth for infrastructure configuration and setup</h3>
|
||||||
|
<p>
|
||||||
|
Control planes built with Crossplane integrate with CI/CD pipelines,
|
||||||
|
so teams can create, track, and approve changes using GitOps best
|
||||||
|
practices.
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
<div class="blueprint-bullet col-1_xs-2">
|
||||||
|
<img src="{{ "/images/cycle.svg" | absURL }}" alt="Icon" />
|
||||||
|
</div>
|
||||||
|
<div class="blueprint-item col-11_xs-10">
|
||||||
|
<h3>Automate operational tasks with reconciling controllers</h3>
|
||||||
|
<p>
|
||||||
|
Your control planes are made up of several controllers, which are
|
||||||
|
responsible for the entire lifecycle of a resource. Each resource is
|
||||||
|
responsible for provisioning, health, scaling, failover, and actively
|
||||||
|
responding to external changes that deviate from the desired
|
||||||
|
configuration.
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
<div class="blueprint-bullet col-1_xs-2">
|
||||||
|
<img src="{{ "/images/extensibility.svg" | absURL }}" alt="Icon" />
|
||||||
|
</div>
|
||||||
|
<div class="blueprint-item col-11_xs-10">
|
||||||
|
<h3>Built with high levels of extensibility</h3>
|
||||||
|
<p>
|
||||||
|
Control planes built with Crossplane leverage broadly accepted
|
||||||
|
Kubernetes patterns, making it easily extensible by adding your own
|
||||||
|
APIs and controllers. Increase flexibility and security by baking
|
||||||
|
policies, quotas, and permissions into a custom definition.
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
<div class="blueprint-bullet col-1_xs-2">
|
||||||
|
<img src="{{ "/images/separation.svg" | absURL }}" alt="Icon" />
|
||||||
|
</div>
|
||||||
|
<div class="blueprint-item col-11_xs-10">
|
||||||
|
<h3>A strong separation of concerns.</h3>
|
||||||
|
<p>
|
||||||
|
Crossplane lets you bake in organisational concepts and policy at the
|
||||||
|
API level, allowing your customers the freedom to self-service within
|
||||||
|
the bounds of the control plane APIs you've defined.
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="blueprint-img col-6_md-hidden">
|
||||||
|
<img src="{{ "/images/blueprint.webp" | absURL }}" alt="open cloud blueprint" />
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div id="openSource">
|
||||||
|
<div>
|
||||||
|
<div class="grid">
|
||||||
|
<div class="col-12">
|
||||||
|
<img src="{{ "/images/crossplane-truck.svg" | absURL }}" alt="Crossplane truck" />
|
||||||
|
<h2>Crossplane is open source and community driven</h2>
|
||||||
|
<p>
|
||||||
|
Crossplane is an open source control plane framework supported by the
|
||||||
|
cloud-native community. Crossplane has been endorsed by some of the
|
||||||
|
world's best companies and is released under the Apache 2.0 license.
|
||||||
|
We remain committed to our community and will always be vendor
|
||||||
|
neutral.
|
||||||
|
</p>
|
||||||
|
<button onclick="window.location.href='{{ .Site.Params.githubLink }}'">
|
||||||
|
Get Started with Crossplane Today
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div id="cncf">
|
||||||
|
<div>
|
||||||
|
<div class="grid">
|
||||||
|
<div class="col-12">
|
||||||
|
<a href="{{ .Site.Params.cncfLink }}">
|
||||||
|
<img class="img" src="{{ "/images/cncf.webp" | absURL }}" srcset="{{ "/images/cncf.webp" | absURL }} 1x, {{ "/images/cncf@2x.webp" | absURL }} 2x, {{ "/images/cncf@3x.webp" | absURL }} 3x" alt="CNCF logo" />
|
||||||
|
</a>
|
||||||
|
<p>We are a Cloud Native Computing Foundation project.</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div id="community">
|
||||||
|
<div>
|
||||||
|
<div class="grid-center">
|
||||||
|
<div class="col-10_sm-12">
|
||||||
|
<h2>Learn more and get involved with the community</h2>
|
||||||
|
<p>
|
||||||
|
Join the conversation and help shape the evolution of Crossplane. Here
|
||||||
|
are a few ways to get started.
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
<div class="col-3_md-6_xs-12 tile">
|
||||||
|
<div class="slack">
|
||||||
|
<div class="topbar"></div>
|
||||||
|
<div class="content">
|
||||||
|
<img src="{{ "/images/slack.svg" | absURL }}" alt="slack" />
|
||||||
|
<h3>Slack</h3>
|
||||||
|
<p>
|
||||||
|
Join the Crossplane team and community members in our Slack group.
|
||||||
|
</p>
|
||||||
|
<button
|
||||||
|
class="grey"
|
||||||
|
onclick="window.location.href= '{{ .Site.Params.slackLink }}';"
|
||||||
|
>
|
||||||
|
Join Slack
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="col-3_md-6_xs-12 tile">
|
||||||
|
<div class="github">
|
||||||
|
<div class="topbar"></div>
|
||||||
|
<div class="content">
|
||||||
|
<img src="{{ "/images/github.svg" | absURL }}" alt="github" />
|
||||||
|
<h3>GitHub</h3>
|
||||||
|
<p>Watch and star Crossplane on GitHub and follow our progress.</p>
|
||||||
|
<button
|
||||||
|
class="grey"
|
||||||
|
onclick="window.location.href = '{{ .Site.Params.githubLink }}';"
|
||||||
|
>
|
||||||
|
Visit GitHub
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="col-3_md-6_xs-12 tile">
|
||||||
|
<div class="youtube">
|
||||||
|
<div class="topbar"></div>
|
||||||
|
<div class="content">
|
||||||
|
<img src="{{ "/images/youtube.svg" | absURL }}" alt="youtube" />
|
||||||
|
<h3>YouTube</h3>
|
||||||
|
<p>Join us discussing features and upcoming news for Crossplane.</p>
|
||||||
|
<button
|
||||||
|
class="grey"
|
||||||
|
onclick="window.location.href = '{{ .Site.Params.youtubeLink }}';"
|
||||||
|
>
|
||||||
|
Visit YouTube
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="col-3_md-6_xs-12 tile">
|
||||||
|
<div class="podcast">
|
||||||
|
<div class="topbar"></div>
|
||||||
|
<div class="content">
|
||||||
|
<img src="{{ "/images/podcast.svg" | absURL }}" alt="podcast" />
|
||||||
|
<h3>Podcast</h3>
|
||||||
|
<p>Listen to The Binding Status, a podcast from the Crossplane community,
|
||||||
|
to learn more about the project and its users.</p>
|
||||||
|
<button class="grey" onclick="window.location.href = '{{ .Site.Params.podcastLink }}';">
|
||||||
|
Visit Podcast
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<p class="join">
|
||||||
|
You can also join us every other week for our
|
||||||
|
<a href="{{ .Site.Params.communityMeetingLink }}">community meeting</a> call to discuss
|
||||||
|
Crossplane
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
Loading…
Reference in New Issue