2.8 KiB
Executable file
2.8 KiB
Executable file
| title | date |
|---|---|
| Mira's attempts to understand Kuwubernetes | 2025-04-07 |
Install k3s, helm
- run `curl -sfL https://get.k3s.io | sh - on first node
curl https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3 | bash
export KUBECONFIG=/etc/rancher/k3s/k3s.yaml
---
apiVersion: apps/v1
kind: Deployment
metadata:
labels:
app: adminer
name: adminer
spec:
replicas: 1
selector:
matchLabels:
app: adminer
template:
metadata:
labels:
app: adminer
spec:
containers:
- image: adminer:latest
name: adminer
ports:
- containerPort: 8080
---
apiVersion: v1
kind: Service
metadata:
name: adminer-svc
spec:
type: ClusterIP
selector:
app: adminer
ports:
- port: 8080
targetPort: 8080
---
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: adminer-http
annotations:
traefik.ingress.kubernetes.io/router.entrypoints: web
spec:
rules:
- host: adminer.lipotropin.lan
http:
paths:
- path: /
pathType: Prefix
backend:
service:
name: adminer-svc
port:
number: 8080
- Use
kubectl apply -f <yaml>to deploy a yaml file
The above two result in the following
$ kubectl describe svc
Name: adminer
Namespace: default
Labels: io.kompose.service=adminer
Annotations: <none>
Selector: io.kompose.service=adminer
Type: ClusterIP
IP Family Policy: SingleStack
IP Families: IPv4
IP: 10.43.229.81
IPs: 10.43.229.81
Port: 8090 8090/TCP
TargetPort: 8080/TCP
Endpoints: 10.42.0.10:8080
Session Affinity: None
Internal Traffic Policy: Cluster
Events: <none>
Adminer can be accesed at 10.42.0.10:8080
[!TODO] how tf do I access this from 127.0.0.1 or outside?
- Deployment: seems to translate to docker service
- Service: seems to handle connecting to the deployment?
- NodePort: something to do with routing
kubectl expose deployment <deployment_name> --port=<port> --target-port=<target_port> --type=NodePort
kubectl apply -f https://github.com/kubernetes-sigs/gateway-api/releases/download/v1.2.1/standard-install.yaml
export KUBECONFIG=/etc/rancher/k3s/k3s.yaml
TODO:
- cyberchef
- adminer
- soulseek
- postgres
- mariadb
- Ntfy
- gluetun?
- Jackett
- qbittorrent
- radarr
- sonarr
- syncthing
- forgejo
- kuma
- paperless-ngx
- goternberg
- redis
- tika
- jellyfin
- Website
- crowdsec
- dufs
- minecraft
- flaresolverr?