1
0
Fork 0
This repository has been archived on 2025-08-23. You can view files and clone it, but you cannot make any changes to it's state, such as pushing and creating new issues, pull requests or comments.
backup-websites-2024-01/components/Environment.tsx

169 lines
5.9 KiB
TypeScript
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

import Image from 'next/image'
import { Container } from './Container'
import logoKubernetes from '@/images/logos/tools/kubernetes.svg'
import logok3s from '@/images/logos/tools/k3s.svg'
import logoRancher from '@/images/logos/tools/rancher.svg'
import logoAWS from '@/images/logos/tools/amazonaws.svg'
import logoDigitalOcean from '@/images/logos/tools/digitalocean.svg'
import logovmware from '@/images/logos/tools/vmware.svg'
const features = [
{
name: 'Kubernetes',
summary: 'Open Source systém pro automatizaci deploymentů, škálování a správu kontejnerizovaných aplikací.',
description:
'Kubernetes je na platformě nezávislý systém, díky kterému může běžet vaše aplikace u vás v datacentru, v public cloudu nebo třeba v okrajových lokalitách, a nebo třeba na všech najednou, bez problému.',
icon: logoKubernetes,
iconColor: '#326CE5',
},
{
name: 'k3s & rke2',
summary:
'k3s: lehká distrubuce Kubernetes; rke2: Kubernetes do vašeho datacentra.',
description:
'k3s i rke2 jsou velice snadno instalovatelné distribuce Kubernetes, které můžete nainstalovat úplně všude a přitom mít stále k dispozici celý Kubernetes ekosystém, bez kompromisů.',
icon: logok3s,
iconColor: '#FFC61C',
},
{
name: 'Rancher',
summary:
'Kubernetes jako služba, ve vašem datacentru.',
description:
'Platforma, pro vaše Kubernetes clustery. Komplexní řešení celého životního cyklu clusteru. Neřešte každodení problémy, nechte je řešit Rancher řešit za vás.',
icon: logoRancher,
iconColor: '#0075A8',
},
{
name: 'AWS',
summary:
'Největší veřejný cloud. Máte problém? AWS má na to službu.',
description:
'Amazon Web Services (AWS) je cloudový poskytovatel služeb, včetně ukládání obrovských objemů dat, výpočetního výkonu a sítí. To vše aby pomohli firmám i jednotlivcům růst. AWS je nejrozšířenější poskytovatel, který je cenově dostupný, flexibilní cesta, jak stavět a provozovat aplikace a služby.',
icon: logoAWS,
iconColor: '#232F3E',
},
// {
// name: 'Google Cloud Platform',
// summary:
// 'Organize all of your contacts, service providers, and invoices in one place.',
// description:
// 'This also isnt actually a feature, its just some friendly advice. We definitely recommend that you do this, youll feel really organized and professional.',
// icon: logoGCP,
// iconColor: '#4285F4',
// },
{
name: 'DigitalOcean',
summary:
'Jednoduchý cloudový poskytovatel, ve kterém se neztratíte.',
description:
'DigitalOcean patří k menším cloudovým poskytovatelům, avšak jejich portfolio vám pro vaši aplikaci bohatě stačí a nebudete se ztrácet v komplexitě velkých poskytovatelů se spoustou služeb.',
icon: logoDigitalOcean,
iconColor: '#0080FF',
},
// {
// name: 'OpenStack',
// summary:
// 'Organize all of your contacts, service providers, and invoices in one place.',
// description:
// 'This also isnt actually a feature, its just some friendly advice. We definitely recommend that you do this, youll feel really organized and professional.',
// icon: logoOpenStack,
// iconColor: '#ED1944',
// },
{
name: 'VMware',
summary:
'Populární řešení pro správu vaše datacentra, od virtuálních serverů až po úložiště.',
description:
'VMware je virtualizační platforma, která umožňuje vytvářet a spravovat virtuální servery a jejich fyzickém hardwaru. Zároveň umožňuje vytvářet oddělená prostředí například pro vývoj a ostrý provoz, tak i pro zcela různé aplikace.',
icon: logovmware,
iconColor: '#607078',
},
]
type FeatureType = {
name: string,
summary: string,
description: string,
icon: any,
iconColor: string,
}
type FeatureProps = {
feature: FeatureType
className?: string,
props?: any[],
}
function Feature({ feature, className, ...props }: FeatureProps) {
return (
<div
className={className}
{...props}
>
<Image src={feature.icon} className="rounded-lg p-2" width="128" height="128" color={feature.iconColor} alt="" />
<h3
className="mt-6 text-lg font-medium text-blue-600"
>
{feature.name}
</h3>
<p className="mt-2 font-display text-xl text-slate-900">
{feature.summary}
</p>
<p className="mt-4 text-sm text-slate-600">
{feature.description}
</p>
</div>
)
}
function FeaturesMobile() {
return (
<div className="-mx-4 mt-20 flex flex-col gap-y-10 overflow-hidden px-4 sm:-mx-6 sm:px-6 lg:hidden">
{features.map((feature) => (
<div key={feature.name}>
<Feature feature={feature} className="mx-auto max-w-2xl" />
</div>
))}
</div>
)
}
function FeaturesDesktop() {
return (
<div className="hidden lg:mt-20 lg:block">
<div className="grid grid-cols-3 gap-x-8 gap-y-4">
{features.map((feature) => (
<div key={feature.name}>
<Feature feature={feature} className="relative" />
</div>
))}
</div>
</div>
)
}
export function Environment() {
return (
<section
id="secondary-features"
aria-label="Features for simplifying everyday business tasks"
className="pt-20 pb-14 sm:pb-20 sm:pt-32 lg:pb-32"
>
<Container>
<div className="mx-auto max-w-2xl md:text-center">
<h2 className="font-display text-3xl tracking-tight text-slate-900 sm:text-4xl">
Jakákoliv platforma, kdekoliv
</h2>
<p className="mt-4 text-lg tracking-tight text-slate-700">
Od veřejného cloudu přes on-premise po serverless, se vším vám poradím.
</p>
</div>
<FeaturesMobile />
<FeaturesDesktop />
</Container>
</section>
)
}