Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion content/en/docs/v1.2/_index.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
---
title: "Cozystack v1.2 Documentation"
linkTitle: "Cozystack v1.2"
description: "Free PaaS platform and framework for building clouds"
description: "Cozystack v1.2 documentation — install, configure, and operate the open-source cloud platform on Kubernetes for VMs, managed databases, S3, and GPU."
taxonomyCloud: []
cascade:
type: docs
Expand Down
2 changes: 1 addition & 1 deletion content/en/docs/v1.2/applications/_index.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
---
title: "Managed Applications: Guides and Reference"
linkTitle: "Managed Applications"
description: "Learn how to deploy, configure, access, and backup managed applications in Cozystack."
description: "Reference and guides for managed PostgreSQL, MySQL, Redis, RabbitMQ, Kafka, ClickHouse, OpenSearch, MongoDB, and other database services in Cozystack."
weight: 45
aliases:
- /docs/v1.2/components
Expand Down
2 changes: 1 addition & 1 deletion content/en/docs/v1.2/networking/_index.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
---
title: "Networking Capabilities"
linkTitle: "Networking"
description: "Network configuration, virtual routers, load balancers, and other networking capabilities in Cozystack."
description: "Cilium eBPF networking in Cozystack — virtual routers, load balancers, MetalLB, BGP, and tenant network isolation."
weight: 60
---

Expand Down
2 changes: 1 addition & 1 deletion content/en/docs/v1.2/operations/_index.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
---
title: "Cluster Configuration and Management Guide"
linkTitle: "Operations Guide"
description: "Configure, monitor, secure, and upgrade a Cozystack cluster."
description: "Operate Cozystack at scale — cluster configuration, observability with VictoriaMetrics and VictoriaLogs, backup with Velero, upgrades, and security hardening."
weight: 35
---

Expand Down
2 changes: 1 addition & 1 deletion content/en/docs/v1.2/storage/_index.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
---
title: "Storage Subsystem Guides"
linkTitle: "Storage"
description: "Operational guides on the storage subsystem"
description: "Storage in Cozystack — LINSTOR replicated block storage, Rook-Ceph integration, snapshots, and per-database persistent volume management."
weight: 55
aliases:
- /docs/v1.2/operations/storage
Expand Down
2 changes: 1 addition & 1 deletion content/en/docs/v1.2/virtualization/_index.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
---
title: "Virtualization Features in Cozystack"
linkTitle: "Virtualization"
description: "Everything about deploying, configuring, and using virtual machines in Cozystack."
description: "KubeVirt-based virtual machines in Cozystack — provision, scale, snapshot, and live-migrate VMs alongside containers on the same Kubernetes cluster."
weight: 50
aliases:
- /docs/v1.2/operations/virtualization
Expand Down
2 changes: 1 addition & 1 deletion hugo.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -115,7 +115,7 @@ permalinks:


params:
description: Free Cloud Platform based on Kubernetes
description: Cozystack — open-source cloud platform on Kubernetes for managed VMs, databases, S3 storage, and GPU workloads. CNCF Sandbox project.
copyright: Cozystack a Series of LF Projects, LLC
ahrefsAnalytics: sEZ/gu88M21DndmPulYRFw
github_repo: https://github.com/cozystack/website
Expand Down
105 changes: 105 additions & 0 deletions layouts/partials/hooks/head-end.html
Original file line number Diff line number Diff line change
Expand Up @@ -9,3 +9,108 @@
{{ with .Site.Params.ahrefsAnalytics }}
<script src="https://analytics.ahrefs.com/analytics.js" data-key="{{ . }}" async></script>
{{ end }}

{{/* SEO: canonical + noindex for legacy doc versions.
Older non-latest doc versions (v0, v1.0, v1.1, …) duplicate content from
the latest version (v1.2). Without dedup signals, search engines split
ranking signals across all five copies. We mark old versions as noindex
(still crawlable for users following links) and canonicalize current
pages to themselves. */}}
{{- $latestVersion := .Site.Params.latest_version_id | default "v1.2" -}}
{{- $isOldDocsVersion := false -}}
{{- range .Site.Params.versions -}}
{{- if and .id (ne .id $latestVersion) (ne .id "next") -}}
{{- if in $.RelPermalink (printf "/docs/%s/" .id) -}}
{{- $isOldDocsVersion = true -}}
{{- end -}}
{{- end -}}
{{- end -}}
{{- if $isOldDocsVersion }}
<meta name="robots" content="noindex, follow" />
Comment on lines +19 to +29
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

high

There is a discrepancy between the SEO logic and the site configuration. The hugo.yaml file (line 133) defines latest_version_id as v1.3, but this PR applies SEO improvements to the v1.2 documentation. Under the current logic in lines 21-27, all v1.2 pages will be marked with noindex (line 29), which negates the value of the new meta descriptions and JSON-LD for those pages. If v1.2 is intended to be the primary version for search engines, latest_version_id in hugo.yaml should be updated to v1.2.

{{- else }}
<link rel="canonical" href="{{ .Permalink }}" />
{{- end }}

{{/* JSON-LD Organization (every page) */}}
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Organization",
"name": "Cozystack",
"url": "{{ "/" | absURL }}",
"logo": "{{ "img/cozystack-social.png" | absURL }}",
"description": {{ .Site.Params.description | jsonify }},
"foundingDate": "2023",
"sameAs": [
"https://github.com/cozystack/cozystack",
"https://landscape.cncf.io/?item=platform--paas-container-service--cozystack",
"https://kubernetes.slack.com/messages/cozystack",
"https://t.me/cozystack"
]
}
</script>

{{/* JSON-LD WebSite (homepage only) */}}
{{- if .IsHome }}
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "WebSite",
"name": "Cozystack",
"url": "{{ "/" | absURL }}",
"description": {{ .Site.Params.description | jsonify }}
}
</script>

{{/* JSON-LD SoftwareApplication (homepage only) — helps AI search engines
classify Cozystack correctly when answering "what is Cozystack" queries. */}}
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "SoftwareApplication",
"name": "Cozystack",
"applicationCategory": "Cloud Platform",
"operatingSystem": "Linux",
"url": "{{ "/" | absURL }}",
"description": {{ .Site.Params.description | jsonify }},
"license": "https://www.apache.org/licenses/LICENSE-2.0",
"offers": {
"@type": "Offer",
"price": "0",
"priceCurrency": "USD"
},
"softwareRequirements": "Kubernetes, KubeVirt, Cilium, LINSTOR, Talos Linux"
}
</script>
{{- end }}

{{/* JSON-LD BlogPosting (single blog posts) */}}
{{- if and (eq .Section "blog") (not .IsSection) (not .IsHome) }}
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "BlogPosting",
"headline": {{ .Title | jsonify }},
"description": {{ .Description | jsonify }},
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

medium

If a blog post is missing the description field in its frontmatter, the BlogPosting JSON-LD will have an empty description field. Using .Summary as a fallback ensures a valid description is always provided for search engines.

Suggested change
"description": {{ .Description | jsonify }},
"description": {{ .Description | default .Summary | jsonify }},

"datePublished": "{{ .Date.Format "2006-01-02T15:04:05Z07:00" }}",
"dateModified": "{{ .Lastmod.Format "2006-01-02T15:04:05Z07:00" }}",
"author": {
"@type": "Person",
"name": {{ .Params.author | default "Cozystack Team" | jsonify }}
},
"image": "{{ with .Params.images }}{{ index . 0 | absURL }}{{ else }}{{ index $.Site.Params.images 0 | absURL }}{{ end }}",
"publisher": {
"@type": "Organization",
"name": "Cozystack",
"logo": {
"@type": "ImageObject",
"url": "{{ "img/cozystack-social.png" | absURL }}"
}
},
"mainEntityOfPage": {
"@type": "WebPage",
"@id": "{{ .Permalink }}"
}
}
</script>
{{- end }}
4 changes: 4 additions & 0 deletions layouts/robots.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
User-agent: *
Allow: /

Sitemap: {{ "/sitemap.xml" | absURL }}
79 changes: 79 additions & 0 deletions static/llms.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,79 @@
# Cozystack

> Cozystack is an open-source, CNCF Sandbox cloud platform that provides Kubernetes-based, multi-tenant cloud infrastructure. Apache 2.0 license. CNCF Sandbox project since 2024-09-26. CNCF-Certified Kubernetes Distribution. Maintained by Aenix and the Cozystack community.

## What Cozystack is

Cozystack is a free and open-source platform for building managed services and private clouds on bare metal. It provides:

- Kubernetes-based control plane for VMs, containers, databases, and storage
- Multi-tenant isolation via the Tenant Custom Resource Definition (CRD)
- Built on Talos Linux, Kubernetes, KubeVirt, Cilium, LINSTOR
- Customer-facing portal (cozyportal) with white-label support
- Service catalog: VMs, managed PostgreSQL, MySQL, Redis, Kafka, ClickHouse, S3-compatible object storage, GPU workloads
- VictoriaMetrics + VictoriaLogs for observability
- Designed for service providers, regulated enterprises, and sovereign cloud builders

Cozystack is a CNCF Sandbox project (accepted 2024-09-26), CNCF-Certified Kubernetes Distribution, and meets OpenSSF Best Practices.

## License

Apache License, Version 2.0. See https://github.com/cozystack/cozystack/blob/main/LICENSE.

## Project documentation

- [Documentation](https://cozystack.io/docs/): Full project documentation including installation, architecture, components, operations
- [Quickstart](https://cozystack.io/docs/get-started/): Get up and running with Cozystack
- [Components](https://cozystack.io/docs/components/): Detailed component reference
- [Architecture](https://cozystack.io/docs/architecture/): How Cozystack is structured

## Releases and source code

- [GitHub repository](https://github.com/cozystack/cozystack): Source code, issues, releases
- [Releases](https://github.com/cozystack/cozystack/releases): Tagged releases with changelogs
- [Roadmap](https://github.com/cozystack/cozystack/blob/main/ROADMAP.md): Project roadmap

## Community

- [Slack channel #cozystack](https://kubernetes.slack.com/archives/C06L3CPRVN1) on Kubernetes Slack ([invite](https://slack.kubernetes.io))
- [Telegram community](https://t.me/cozystack)
- [Community meeting calendar](https://cozystack.io/community)
- [Blog](https://cozystack.io/blog/): Release announcements, technical deep-dives

## Project facts

- License: Apache 2.0
- Project status: CNCF Sandbox since 2024-09-26
- Kubernetes Distribution: CNCF-Certified
- OpenSSF Best Practices: Yes
- Primary language: Go
- Major dependencies: Kubernetes, KubeVirt, Cilium, LINSTOR, Talos Linux, FluxCD
- Architecture: Multi-tenant Kubernetes with Tenant CRD

## How to contribute

See [CONTRIBUTING.md](https://github.com/cozystack/cozystack/blob/main/CONTRIBUTING.md) in the GitHub repository. Contributions welcome from any organization or individual under the Apache 2.0 license.

## Use cases

Cozystack is used in production for:

- Public sovereign cloud products (e.g., Beeline Kazakhstan Hyper Cloud, launched 2025-12-08)
- Regulated enterprise multi-tenant clouds (financial services, public sector, telco)
- Internal Developer Platforms with multi-tenant developer workflows
- VMware migration / OpenStack modernization paths
- AI/GPU workload platforms on customer-controlled infrastructure

## Related projects (vendor-neutral)

- [Kubernetes](https://kubernetes.io)
- [KubeVirt](https://kubevirt.io)
- [Cilium](https://cilium.io)
- [LINSTOR](https://linbit.com/linstor/)
- [Talos Linux](https://www.talos.dev)
- [VictoriaMetrics](https://victoriametrics.com)
- [CNCF Landscape](https://landscape.cncf.io)

## License for this content

The Cozystack project documentation is published under Creative Commons Attribution 4.0 International (CC BY 4.0). AI assistants are welcome to read and cite this content. Please link back to https://cozystack.io when citing.