From 441f2b2999f8f643fbe73a23ed7acf187e47152b Mon Sep 17 00:00:00 2001 From: nutzer26 Date: Wed, 14 Dec 2022 14:37:30 +0100 Subject: [PATCH] zwischenstand --- carpool/docker-compose.yml | 6 ++- dive_check_dockerfile | 8 ++++ docker_commands | 5 +++ docker_compose_notizen | 2 +- docker_sheets | 1 + k3d/registries.yml | 6 +++ k3d/whoami-pod.yaml | 15 ++++++++ k3d/whoami4-pod.yaml | 20 ++++++++++ k8s/install_k3d | 76 ++++++++++++++++++++++++++++++++++++++ k8s/k8s_Object_Structure | 5 +++ k8s/pods | 16 ++++++++ 11 files changed, 158 insertions(+), 2 deletions(-) create mode 100644 k3d/registries.yml create mode 100644 k3d/whoami-pod.yaml create mode 100644 k3d/whoami4-pod.yaml create mode 100644 k8s/install_k3d create mode 100644 k8s/k8s_Object_Structure create mode 100644 k8s/pods diff --git a/carpool/docker-compose.yml b/carpool/docker-compose.yml index 4785bfd..48f0624 100644 --- a/carpool/docker-compose.yml +++ b/carpool/docker-compose.yml @@ -41,4 +41,8 @@ services: - postgres:/var/lib/postgresql/data - ./esentricar.sql:/docker-entrypoint-initdb.d/esentricar.sql volumes: - postgres: \ No newline at end of file + postgres: + + curl -i -X POST car.localhost/car \ + -H "Content-Type: application/json" \ + --data-binary "@car_2.json" \ No newline at end of file diff --git a/dive_check_dockerfile b/dive_check_dockerfile index e69de29..e5cb18c 100644 --- a/dive_check_dockerfile +++ b/dive_check_dockerfile @@ -0,0 +1,8 @@ +#mit dive kann ich ein Dockerfile Image debuggen + +docker run --rm -it \ + -v /var/run/docker.sock:/var/run/docker.sock \ + -v "$(pwd)":"$(pwd)" \ + -w "$(pwd)" \ + -v "$HOME/.dive.yaml":"$HOME/.dive.yaml" \ + wagoodman/dive:latest build -t . \ No newline at end of file diff --git a/docker_commands b/docker_commands index e8ef118..2e92c36 100644 --- a/docker_commands +++ b/docker_commands @@ -29,3 +29,8 @@ ps fax 7426 ? S 0:00 \_ nginx: worker process 7427 ? S 0:00 \_ nginx: worker process 7428 ? S 0:00 \_ nginx: worker process + + +docker stats zeigt den verbrauch an. + +docker context \ No newline at end of file diff --git a/docker_compose_notizen b/docker_compose_notizen index f8a8ad5..bfcf882 100644 --- a/docker_compose_notizen +++ b/docker_compose_notizen @@ -6,7 +6,7 @@ volume: werden nicht die Inhalte kopiert. -Wichtige einstellung für die Netzwerkadapter !! +Wichtige einstellung für die Netzwerkadapter networks: default: diff --git a/docker_sheets b/docker_sheets index f490d01..ecff5b5 100644 --- a/docker_sheets +++ b/docker_sheets @@ -96,6 +96,7 @@ This command is used to fetch the real time events from the server. $ docker events +docker events This command is used to manage the Plugins. $ docker plugin diff --git a/k3d/registries.yml b/k3d/registries.yml new file mode 100644 index 0000000..f42b372 --- /dev/null +++ b/k3d/registries.yml @@ -0,0 +1,6 @@ +mirrors: + docker.io: + endpoint: + - "http://192.168.1.246:5001" + - "https://mirror.gcr.io" + - "https://docker.io" diff --git a/k3d/whoami-pod.yaml b/k3d/whoami-pod.yaml new file mode 100644 index 0000000..95af7a3 --- /dev/null +++ b/k3d/whoami-pod.yaml @@ -0,0 +1,15 @@ +apiVersion: v1 +kind: Pod +metadata: + creationTimestamp: null + labels: + run: whoami + name: whoami2 +spec: + containers: + - image: bee42/whoami:2.2.0 + name: whoami2 + resources: {} + dnsPolicy: ClusterFirst + restartPolicy: Always +status: {} diff --git a/k3d/whoami4-pod.yaml b/k3d/whoami4-pod.yaml new file mode 100644 index 0000000..e04ef09 --- /dev/null +++ b/k3d/whoami4-pod.yaml @@ -0,0 +1,20 @@ +apiVersion: v1 +kind: Pod +metadata: + creationTimestamp: null + labels: + run: whoami + name: whoami-box +spec: + containers: + - image: bee42/whoami:2.2.0 + name: whoami + resources: {} + - image: busybox + name: box + args: + - sleep + - "45" + dnsPolicy: ClusterFirst + restartPolicy: Never +status: {} diff --git a/k8s/install_k3d b/k8s/install_k3d new file mode 100644 index 0000000..97b0a38 --- /dev/null +++ b/k8s/install_k3d @@ -0,0 +1,76 @@ +mkdir ~/k3d + +curl -s https://raw.githubusercontent.com/rancher/k3d/main/install.sh | bash +CLUSTER=cnbc +IP4=$(/sbin/ip -o -4 addr list br2 | awk '{print $4}' | cut -d/ -f1) + +# Get from TRAINER :) +MIRROR_IP=192.168.1.246 +cat >registries.yml </dev/null | \ + openssl x509 -text + +PORT=$(docker container inspect \ + --format '{{ (index (index .NetworkSettings.Ports "5000/tcp") 0).HostPort }}' \ + $CLUSTER-registry) +sudo sh -c "echo 127.0.0.1 $CLUSTER-registry >>/etc/hosts" +curl cnbc-registry:5000/v2/_catalog +source <(k3d completion bash) + +cloud: + +curl -s https://raw.githubusercontent.com/rancher/k3d/main/install.sh | bash +CLUSTER=cnbc +# cloud instance +IP4=$(/sbin/ip -o -4 addr list eth0 | awk '{print $4}' | cut -d/ -f1) + +# WARNING Check IP +k3d cluster create $CLUSTER \ + --api-port 8545 \ + -p "8580:80@loadbalancer" \ + -p "8543:443@loadbalancer" \ + --agents=2 \ + --k3s-arg "--tls-san=$IP4@server:0" \ + --k3s-arg "--disable=traefik@server:0" \ + --registry-create $CLUSTER-registry:0.0.0.0:5000 + +echo | \ + openssl s_client -connect $IP4:8545 2>/dev/null | \ + openssl x509 -text + +PORT=$(docker container inspect \ + --format '{{ (index (index .NetworkSettings.Ports "5000/tcp") 0).HostPort }}' \ + $CLUSTER-registry) +sudo sh -c "echo 127.0.0.1 $CLUSTER-registry >>/etc/hosts" +curl cnbc-registry:5000/v2/_catalog +source <(k3d completion bash) + +sudo apt-get update && sudo apt-get install -y apt-transport-https +curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg \ + | sudo apt-key add - +echo "deb https://apt.kubernetes.io/ kubernetes-xenial main" \ + | sudo tee -a /etc/apt/sources.list.d/kubernetes.list + + +sudo apt-get update +sudo apt-get install -y kubectl +source <(kubectl completion bash) diff --git a/k8s/k8s_Object_Structure b/k8s/k8s_Object_Structure new file mode 100644 index 0000000..b818943 --- /dev/null +++ b/k8s/k8s_Object_Structure @@ -0,0 +1,5 @@ +API Version ---> die Verison +Kind ---> Pod, Deployment, Quota, usw +Metadaten ---> Namen, Namespache, usw +Spec --->Desired state +Status ---> Actual state \ No newline at end of file diff --git a/k8s/pods b/k8s/pods new file mode 100644 index 0000000..098961e --- /dev/null +++ b/k8s/pods @@ -0,0 +1,16 @@ +kubectl create namespace whoami +kubectl config view +kubectl config set-context --current --namespace whoami +# create pod and service +kubectl run whoami --image bee42/whoami:2.2.0 --expose --port 80 +kubectl get pods +kubectl get pods -o yaml +# see we created also a service! +kubectl get svc + + +kubectl run whoami --image bee42/whoami:2.2.0 --expose --port 80 +kubectl get pod whoami -o yaml + +# kann zur erstellung der YAML genutzt werden. +kubectl run whoami2 --image bee42/whoami:2.2.0 --labels=run=whoami --dry-run=client -o yaml >whoami-pod.yaml \ No newline at end of file