mirror of
https://github.com/portainer/portainer.git
synced 2025-07-21 06:19:41 +02:00
Some checks are pending
ci / build_images (map[arch:amd64 platform:linux version:]) (push) Waiting to run
ci / build_images (map[arch:amd64 platform:windows version:1809]) (push) Waiting to run
ci / build_images (map[arch:amd64 platform:windows version:ltsc2022]) (push) Waiting to run
ci / build_images (map[arch:arm platform:linux version:]) (push) Waiting to run
ci / build_images (map[arch:arm64 platform:linux version:]) (push) Waiting to run
ci / build_images (map[arch:ppc64le platform:linux version:]) (push) Waiting to run
ci / build_images (map[arch:s390x platform:linux version:]) (push) Waiting to run
ci / build_manifests (push) Blocked by required conditions
/ triage (push) Waiting to run
Lint / Run linters (push) Waiting to run
Test / test-server (map[arch:amd64 platform:windows version:ltsc2022]) (push) Waiting to run
Test / test-server (map[arch:arm64 platform:linux]) (push) Waiting to run
Test / test-client (push) Waiting to run
Test / test-server (map[arch:amd64 platform:linux]) (push) Waiting to run
Test / test-server (map[arch:amd64 platform:windows version:1809]) (push) Waiting to run
Co-authored-by: testa113 <testa113>
90 lines
3 KiB
TypeScript
90 lines
3 KiB
TypeScript
import ingressDiagram from '@/assets/images/ingress-explanatory-diagram.png';
|
|
|
|
import { FormSection } from '@@/form-components/FormSection';
|
|
|
|
export function PublishingExplaination() {
|
|
return (
|
|
<FormSection title="Explanation" isFoldable titleSize="sm">
|
|
<div className="w-full mb-4 flex flex-col items-start lg:flex-row">
|
|
<img
|
|
src={ingressDiagram}
|
|
alt="ingress explaination"
|
|
width={646}
|
|
className="flex w-full max-w-2xl basis-1/2 flex-col rounded border border-solid border-gray-5 object-contain lg:w-1/2"
|
|
/>
|
|
<div className="text-muted ml-8 basis-1/2 text-xs">
|
|
Expose the application workload via{' '}
|
|
<a
|
|
href="https://kubernetes.io/docs/concepts/services-networking/service/"
|
|
target="_blank"
|
|
rel="noopener noreferrer"
|
|
>
|
|
services
|
|
</a>{' '}
|
|
and{' '}
|
|
<a
|
|
href="https://kubernetes.io/docs/concepts/services-networking/ingress/"
|
|
target="_blank"
|
|
rel="noopener noreferrer"
|
|
>
|
|
ingresses
|
|
</a>
|
|
:
|
|
<ul className="ml-5 mt-3 [&>li>ul>li]:ml-5 [&>li]:mb-3">
|
|
<li>
|
|
<b>Inside</b> the cluster{' '}
|
|
<b>
|
|
<i>only</i>
|
|
</b>{' '}
|
|
- via <b>ClusterIP</b> service
|
|
<ul>
|
|
<li>
|
|
<i>The default service type.</i>
|
|
</li>
|
|
</ul>
|
|
</li>
|
|
<li>
|
|
<b>Inside</b> the cluster via <b>ClusterIP</b> service and{' '}
|
|
<b>outside</b> via <b>ingress</b>
|
|
<ul>
|
|
<li>
|
|
<i>
|
|
An ingress manages external access to (usually ClusterIP)
|
|
services within the cluster, and allows defining of routing
|
|
rules, SSL termination and other advanced features.
|
|
</i>
|
|
</li>
|
|
</ul>
|
|
</li>
|
|
<li>
|
|
<b>Inside</b> and <b>outside</b> the cluster via <b>NodePort</b>{' '}
|
|
service
|
|
<ul>
|
|
<li>
|
|
<i>
|
|
This publishes the workload on a static port on each node,
|
|
allowing external access via a nodes' IP address and
|
|
port. Not generally recommended for Production use.
|
|
</i>
|
|
</li>
|
|
</ul>
|
|
</li>
|
|
<li>
|
|
<b>Inside</b> and <b>outside</b> the cluster via{' '}
|
|
<b>LoadBalancer</b> service
|
|
<ul>
|
|
<li>
|
|
<i>
|
|
If running on a cloud platform, this auto provisions a cloud
|
|
load balancer and assigns an external IP address or DNS to
|
|
route traffic to the workload.
|
|
</i>
|
|
</li>
|
|
</ul>
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
</div>
|
|
</FormSection>
|
|
);
|
|
}
|