[{"data":1,"prerenderedAt":1435},["ShallowReactive",2],{"navigation_docs_en":3,"-en-usecases-and-demos-ubuntu-in-namespace":175,"-en-usecases-and-demos-ubuntu-in-namespace-surround":1430},[4,35,64,86,108,135,150],{"title":5,"icon":6,"path":7,"stem":8,"children":9,"page":6},"Quick Start",false,"/en/quick-start","en/1.quick-start",[10,15,20,25,30],{"title":11,"path":12,"stem":13,"icon":14},"Introduction","/en/quick-start/introduction","en/1.quick-start/1.introduction","i-lucide-house",{"title":16,"path":17,"stem":18,"icon":19},"Installation","/en/quick-start/installation","en/1.quick-start/2.installation","i-lucide-download",{"title":21,"path":22,"stem":23,"icon":24},"Getting Started","/en/quick-start/getting-started","en/1.quick-start/3.getting-started","i-lucide-rocket",{"title":26,"path":27,"stem":28,"icon":29},"Docker Desktop Extension","/en/quick-start/docker-desktop-extension","en/1.quick-start/4.docker-desktop-extension","i-simple-icons-docker",{"title":31,"path":32,"stem":33,"icon":34},"CLI","/en/quick-start/cli","en/1.quick-start/5.cli","i-lucide-square-terminal",{"title":36,"path":37,"stem":38,"children":39,"page":6},"Local Environments","/en/local-environments","en/2.local-environments",[40,43,48,52,56,60],{"title":21,"path":41,"stem":42,"icon":24},"/en/local-environments/getting-started","en/2.local-environments/1.getting-started",{"title":44,"path":45,"stem":46,"icon":47},"Colima Kubernetes","/en/local-environments/colima","en/2.local-environments/2.colima","i-simple-icons-kubernetes",{"title":49,"path":50,"stem":51,"icon":29},"Docker Desktop Kubernetes (OSX)","/en/local-environments/docker-desktop-osx","en/2.local-environments/3.docker-desktop-osx",{"title":53,"path":54,"stem":55},"k3d","/en/local-environments/k3d","en/2.local-environments/4.k3d",{"title":57,"path":58,"stem":59},"kind","/en/local-environments/kind","en/2.local-environments/5.kind",{"title":61,"path":62,"stem":63},"minikube","/en/local-environments/minikube","en/2.local-environments/5.minikube",{"title":65,"path":66,"stem":67,"children":68,"page":6},"Shared Environments","/en/shared-environments","en/3.shared-environments",[69,72,76,81],{"title":21,"path":70,"stem":71,"icon":24},"/en/shared-environments/getting-started","en/3.shared-environments/1.getting-started",{"title":73,"path":74,"stem":75,"icon":19},"Installing Gefyra in a Cluster","/en/shared-environments/installation","en/3.shared-environments/2.installation",{"title":77,"path":78,"stem":79,"icon":80},"Managing Gefyra Clients","/en/shared-environments/clients","en/3.shared-environments/3.clients","i-lucide-computer",{"title":82,"path":83,"stem":84,"icon":85},"Connecting to Gefyra","/en/shared-environments/connecting","en/3.shared-environments/4.connecting","i-lucide-link",{"title":87,"path":88,"stem":89,"children":90,"page":6},"Remote K8s","/en/remote-k8s","en/4.remote-k8s",[91,94,99,104],{"title":21,"path":92,"stem":93,"icon":24},"/en/remote-k8s/getting-started","en/4.remote-k8s/1.getting-started",{"title":95,"path":96,"stem":97,"icon":98},"Google Cloud Platform (GCP)","/en/remote-k8s/gcp","en/4.remote-k8s/2.gcp","i-material-icon-theme:gcp",{"title":100,"path":101,"stem":102,"icon":103},"Elastic Kubernetes Service (EKS)","/en/remote-k8s/eks","en/4.remote-k8s/3.eks","i-simple-icons-amazoneks",{"title":105,"path":106,"stem":107,"icon":47},"SysEleven MetaKubde Kubernetes","/en/remote-k8s/sys11","en/4.remote-k8s/4.sys11",{"title":109,"path":110,"stem":111,"children":112,"page":6},"Use Cases and Demos","/en/usecases-and-demos","en/5.usecases-and-demos",[113,116,121,126,130],{"title":21,"path":114,"stem":115,"icon":24},"/en/usecases-and-demos/getting-started","en/5.usecases-and-demos/1.getting-started",{"title":117,"path":118,"stem":119,"icon":120},"Developing Go Applications with Gefyra","/en/usecases-and-demos/golang","en/5.usecases-and-demos/2.golang","i-simple-icons-go",{"title":122,"path":123,"stem":124,"icon":125},"OAuth2 Demo with a Sidecar","/en/usecases-and-demos/oauth2-demo","en/5.usecases-and-demos/3.oauth2-demo","i-devicon-plain:oauth",{"title":127,"path":128,"stem":129,"icon":98},"Remote Development on Google Kubernetes Engine","/en/usecases-and-demos/remote-gke","en/5.usecases-and-demos/4.remote-gke",{"title":131,"path":132,"stem":133,"icon":134},"Run an Ubuntu Container instance","/en/usecases-and-demos/ubuntu-in-namespace","en/5.usecases-and-demos/5.ubuntu-in-namespace","i-simple-icons-ubuntu",{"title":136,"path":137,"stem":138,"children":139,"page":6},"Technical Details","/en/technical-details","en/6.technical-details",[140,145],{"title":141,"path":142,"stem":143,"icon":144},"Architecture","/en/technical-details/architecture","en/6.technical-details/1.architecture","i-lucide-square-chevron-right",{"title":146,"path":147,"stem":148,"icon":149},"What is Gefyra?","/en/technical-details/what-is-gefyra","en/6.technical-details/2.what-is-gefyra","i-lucide-circle-question-mark",{"title":151,"path":152,"stem":153,"children":154,"page":6},"Information","/en/information","en/7.information",[155,160,165,170],{"title":156,"path":157,"stem":158,"icon":159},"Run vs. Bridge","/en/information/run-vs-bridge","en/7.information/1.run-vs-bridge","i-lucide-git-compare-arrows",{"title":161,"path":162,"stem":163,"icon":164},"What changed in Gefyra 2?","/en/information/v1-vs-v2","en/7.information/2.v1-vs-v2","i-lucide-history",{"title":166,"path":167,"stem":168,"icon":169},"Media","/en/information/media","en/7.information/3.media","i-lucide-play",{"title":171,"path":172,"stem":173,"icon":174},"About","/en/information/about","en/7.information/4.about","i-lucide-info",{"id":176,"title":177,"body":178,"description":1423,"extension":1424,"links":1425,"meta":1426,"navigation":1427,"path":132,"seo":1428,"stem":133,"__hash__":1429},"docs_en/en/5.usecases-and-demos/5.ubuntu-in-namespace.md","Making any container part of your Kubernetes namespace",{"type":179,"value":180,"toc":1411},"minimark",[181,185,190,203,207,244,248,260,263,288,294,301,310,331,335,348,352,362,384,388,395,469,472,508,515,523,528,534,543,546,586,595,804,810,1336,1352,1356,1363,1367,1377,1404,1407],[182,183,184],"tip",{},"Simple Usecase",[186,187,189],"h2",{"id":188},"what-you-will-learn","What you will learn",[191,192,193,197,200],"ul",{},[194,195,196],"li",{},"Run a Ubuntu container as part of a Kubernetes namespace",[194,198,199],{},"Install additional software to that instance",[194,201,202],{},"Use this container to call Kubernetes services",[186,204,206],{"id":205},"what-you-will-need","What you will need",[191,208,209,215,229,236],{},[194,210,211],{},[212,213,214],"a",{"href":17},"Gefyra",[194,216,217,224,225,228],{},[212,218,223],{"href":219,"rel":220,"target":222},"https://github.com/Getdeck/getdeck",[221],"nofollow","_blank","Getdeck"," for setting up the development infrastructure (runs on ",[226,227,53],"code",{},")",[194,230,231],{},[212,232,235],{"href":233,"rel":234,"target":222},"https://kubernetes.io/docs/tasks/tools/",[221],"kubectl",[194,237,238,239,243],{},"Optionally: ",[212,240,53],{"href":241,"rel":242,"target":222},"https://k3d.io",[221]," or any other preferred Kubernetes cluster",[186,245,247],{"id":246},"creating-the-local-development-infrastructure","Creating the local development infrastructure",[249,250,251,252,259],"p",{},"First, we need a Kubernetes-based development infrastructure which contains all required components. Luckily this can\nbe achieved quite easily with the ",[212,253,255,258],{"href":219,"rel":254,"target":222},[221],[226,256,257],{},"Deck CLI"," from here",".",[249,261,262],{},"Just run:",[264,265,270],"pre",{"className":266,"code":267,"language":268,"meta":269,"style":269},"language-sh shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","deck get https://github.com/Blueshoe/buzzword-charts.git\n","sh","",[226,271,272],{"__ignoreMap":269},[273,274,277,281,285],"span",{"class":275,"line":276},"line",1,[273,278,280],{"class":279},"sBMFI","deck",[273,282,284],{"class":283},"sfazB"," get",[273,286,287],{"class":283}," https://github.com/Blueshoe/buzzword-charts.git\n",[249,289,290,291,293],{},"and you will get a fresh ",[226,292,53],{}," cluster running locally with all required components installed.",[249,295,296,300],{},[297,298,299],"strong",{},"Important:"," These workloads are intended for demonstration purposes and are not safe for production deployments.",[249,302,303,306,307,309],{},[297,304,305],{},"Optional:"," If you don't want to create the development infrastructure using ",[226,308,223],{}," you can also provide it\nyourself. You need:",[191,311,312,315,328],{},[194,313,314],{},"a Kubernetes cluster",[194,316,317,318,323,324,327],{},"some workload, you can choose the example\nfrom ",[212,319,322],{"href":320,"rel":321,"target":222},"https://github.com/Blueshoe/buzzword-charts/tree/main/buzzword-counter",[221],"here"," and ",[226,325,326],{},"helm install"," it yourself",[194,329,330],{},"a node port at 31820:31820/UDP (if running it locally)",[186,332,334],{"id":333},"getting-the-app-running","Getting the App Running",[249,336,337,339,340,345,346,259],{},[297,338,305],{}," In order to observe the workload booting up, check out\n",[212,341,344],{"href":342,"rel":343,"target":222},"http://dashboard.127.0.0.1.nip.io:8080/#/workloads?namespace=buzzword",[221],"the Kubernetes dashboard"," coming with this ",[226,347,280],{},[186,349,351],{"id":350},"connecting-gefyra-to-the-kubernetes-cluster","Connecting Gefyra to the Kubernetes cluster",[249,353,354,355,358,359,361],{},"The first would be to spin up Gefyra with ",[226,356,357],{},"gefyra up",". Please be sure to still have the development cluster\nactive in your current ",[226,360,235],{}," context.",[249,363,364,366,367,370,371,375,376,379,380,383],{},[297,365,299],{}," If you are running a remote Kubernetes cluster you need to specify the ",[226,368,369],{},"--host"," argument with ",[372,373,374],"em",{},"IP","\nof one of your data plane nodes. The default port is ",[372,377,378],{},"31820"," (",[226,381,382],{},"--port","), it may be different depending on firewalls and the cluster\nnetworking.",[186,385,387],{"id":386},"running-a-container-in-a-kubernetes-namespace","Running a container in a Kubernetes namespace",[249,389,390,391,394],{},"In this example, a Ubuntu will become part of the cluster namespace ",[372,392,393],{},"buzzword",".\nStart the container instance like so :",[264,396,398],{"className":266,"code":397,"language":268,"meta":269,"style":269},"> gefyra run -i ubuntu -N myubuntu -n buzzword -c \"bash -c 'tail -f /dev/null'\"\n\n[INFO] Container image 'ubuntu:latest' started with name 'myubuntu' in Kubernetes namespace 'buzzword'\n",[226,399,400,419,426],{"__ignoreMap":269},[273,401,402,406,410,413,416],{"class":275,"line":276},[273,403,405],{"class":404},"sMK4o",">",[273,407,409],{"class":408},"sTEyZ"," gefyra run -i ubuntu -N myubuntu -n buzzword -c ",[273,411,412],{"class":404},"\"",[273,414,415],{"class":283},"bash -c 'tail -f /dev/null'",[273,417,418],{"class":404},"\"\n",[273,420,422],{"class":275,"line":421},2,[273,423,425],{"emptyLinePlaceholder":424},true,"\n",[273,427,429,432,435,438,441,444,447,449,452,454,457,459,462,464,466],{"class":275,"line":428},3,[273,430,431],{"class":404},"[",[273,433,434],{"class":408},"INFO",[273,436,437],{"class":404},"]",[273,439,440],{"class":408}," Container image ",[273,442,443],{"class":404},"'",[273,445,446],{"class":283},"ubuntu:latest",[273,448,443],{"class":404},[273,450,451],{"class":408}," started with name ",[273,453,443],{"class":404},[273,455,456],{"class":283},"myubuntu",[273,458,443],{"class":404},[273,460,461],{"class":408}," in Kubernetes namespace ",[273,463,443],{"class":404},[273,465,393],{"class":283},[273,467,468],{"class":404},"'\n",[249,470,471],{},"No worries, the following explains the parameter list:",[191,473,474,484,493,502],{},[194,475,476,479,480],{},[372,477,478],{},"-i ubuntu",": run the public Docker image ob Ubuntu from here: ",[212,481,482],{"href":482,"rel":483,"target":222},"https://hub.docker.com/_/ubuntu",[221],[194,485,486,489,490,492],{},[372,487,488],{},"-N myubuntu",": name this local Docker instance ",[372,491,456],{}," for further reference",[194,494,495,498,499,501],{},[372,496,497],{},"-n buzzword",": place this Docker instance in the Kubernetes namespace ",[372,500,393],{}," (where this example plays)",[194,503,504,507],{},[372,505,506],{},"-c \"bash -c 'tail -f /dev/null'\"",": start this Docker instance and keep it running forever",[249,509,510,511,514],{},"You can check the output of ",[226,512,513],{},"docker ps"," to see your container instance running. It should look something like this:",[264,516,521],{"className":517,"code":519,"language":520},[518],"language-text","CONTAINER ID   IMAGE                         COMMAND                  CREATED          STATUS          PORTS                                                            NAMES\n660ce52ce4e1   ubuntu                        \"bash -c 'tail -f /d…\"   9 seconds ago    Up 8 seconds                                                                     myubunut\ne0add97dee80   gefyra-cargo:20220426153151   \"/init\"                  14 seconds ago   Up 13 seconds                                                                    gefyra-cargo\n97f9908c55df   rancher/k3d-proxy:4.4.8       \"/bin/sh -c nginx-pr…\"   12 minutes ago   Up 12 minutes   0.0.0.0:8080->80/tcp, :::8080->80/tcp, 0.0.0.0:34089->6443/tcp   k3d-another-cluster-serverlb\n1dccf93fc087   rancher/k3s:v1.20.4-k3s1      \"/bin/k3s agent\"         12 minutes ago   Up 12 minutes   0.0.0.0:31820->31820/udp, :::31820->31820/udp                    k3d-another-cluster-agent-0\n91ef49d000b5   rancher/k3s:v1.20.4-k3s1      \"/bin/k3s server --t…\"   12 minutes ago   Up 12 minutes                                                                    k3d-another-cluster-server-0\n","text",[226,522,519],{"__ignoreMap":269},[524,525,527],"h3",{"id":526},"enter-the-container-and-call-a-service","Enter the container and call a service",[249,529,530,531],{},"Now that the container is running, you can enter a bash by running: ",[226,532,533],{},"docker exec -it myubuntu bash",[264,535,537],{"className":266,"code":536,"language":268,"meta":269,"style":269},"root@6178770cd6b1:/#\n",[226,538,539],{"__ignoreMap":269},[273,540,541],{"class":275,"line":276},[273,542,536],{"class":279},[249,544,545],{},"In order to call an http service from this Kubernetes namespace a terminal application could be handy. The official\nUbuntu Docker image does not provide on of my favorites out of the box, but it is easy to add it.",[264,547,549],{"className":266,"code":548,"language":268,"meta":269,"style":269},"root@6178770cd6b1:/# apt update && apt install wget -y\n[...]\n",[226,550,551,576],{"__ignoreMap":269},[273,552,553,556,559,562,565,567,570,573],{"class":275,"line":276},[273,554,555],{"class":279},"root@6178770cd6b1:/#",[273,557,558],{"class":283}," apt",[273,560,561],{"class":283}," update",[273,563,564],{"class":404}," &&",[273,566,558],{"class":279},[273,568,569],{"class":283}," install",[273,571,572],{"class":283}," wget",[273,574,575],{"class":283}," -y\n",[273,577,578,580,583],{"class":275,"line":421},[273,579,431],{"class":404},[273,581,582],{"class":408},"...",[273,584,585],{"class":404},"]\n",[249,587,588,589,591,592,594],{},"On another terminal (so not in your Ubuntu bash) you can consult ",[226,590,235],{}," to inspect the services in the ",[372,593,393],{}," namespace. For this example it\ntells:",[264,596,598],{"className":266,"code":597,"language":268,"meta":269,"style":269},"> kubectl -n buzzword get services\n\nNAME                                   TYPE        CLUSTER-IP      EXTERNAL-IP   PORT(S)                                 AGE\ndashboard-kubernetes-dashboard         ClusterIP   10.43.147.1     \u003Cnone>        8080/TCP                                18m\n[...]\nbuzzword-counter                       ClusterIP   10.43.221.222   \u003Cnone>        9000/TCP                                18m\nbuzzword-counter-postgresql            ClusterIP   10.43.140.176   \u003Cnone>        5432/TCP                                18m\nbuzzword-counter-postgresql-headless   ClusterIP   None            \u003Cnone>        5432/TCP                                18m\nbuzzword-counter-rabbitmq              ClusterIP   10.43.0.48      \u003Cnone>        4369/TCP,5672/TCP,25672/TCP,15672/TCP   18m\nbuzzword-counter-rabbitmq-headless     ClusterIP   None            \u003Cnone>        4369/TCP,5672/TCP,25672/TCP,15672/TCP   18m\n\n",[226,599,600,607,611,639,669,678,704,729,754,781],{"__ignoreMap":269},[273,601,602,604],{"class":275,"line":276},[273,603,405],{"class":404},[273,605,606],{"class":408}," kubectl -n buzzword get services\n",[273,608,609],{"class":275,"line":421},[273,610,425],{"emptyLinePlaceholder":424},[273,612,613,616,619,622,625,628,631,634,636],{"class":275,"line":428},[273,614,615],{"class":279},"NAME",[273,617,618],{"class":283},"                                   TYPE",[273,620,621],{"class":283},"        CLUSTER-IP",[273,623,624],{"class":283},"      EXTERNAL-IP",[273,626,627],{"class":283},"   PORT",[273,629,630],{"class":404},"(",[273,632,633],{"class":279},"S",[273,635,228],{"class":404},[273,637,638],{"class":283},"                                 AGE\n",[273,640,642,645,648,652,655,658,661,663,666],{"class":275,"line":641},4,[273,643,644],{"class":279},"dashboard-kubernetes-dashboard",[273,646,647],{"class":283},"         ClusterIP",[273,649,651],{"class":650},"sbssI","   10.43.147.1",[273,653,654],{"class":404},"     \u003C",[273,656,657],{"class":283},"non",[273,659,660],{"class":408},"e",[273,662,405],{"class":404},[273,664,665],{"class":283},"        8080/TCP",[273,667,668],{"class":283},"                                18m\n",[273,670,672,674,676],{"class":275,"line":671},5,[273,673,431],{"class":404},[273,675,582],{"class":408},[273,677,585],{"class":404},[273,679,681,684,687,690,693,695,697,699,702],{"class":275,"line":680},6,[273,682,683],{"class":279},"buzzword-counter",[273,685,686],{"class":283},"                       ClusterIP",[273,688,689],{"class":650},"   10.43.221.222",[273,691,692],{"class":404},"   \u003C",[273,694,657],{"class":283},[273,696,660],{"class":408},[273,698,405],{"class":404},[273,700,701],{"class":283},"        9000/TCP",[273,703,668],{"class":283},[273,705,707,710,713,716,718,720,722,724,727],{"class":275,"line":706},7,[273,708,709],{"class":279},"buzzword-counter-postgresql",[273,711,712],{"class":283},"            ClusterIP",[273,714,715],{"class":650},"   10.43.140.176",[273,717,692],{"class":404},[273,719,657],{"class":283},[273,721,660],{"class":408},[273,723,405],{"class":404},[273,725,726],{"class":283},"        5432/TCP",[273,728,668],{"class":283},[273,730,732,735,738,741,744,746,748,750,752],{"class":275,"line":731},8,[273,733,734],{"class":279},"buzzword-counter-postgresql-headless",[273,736,737],{"class":283},"   ClusterIP",[273,739,740],{"class":283},"   None",[273,742,743],{"class":404},"            \u003C",[273,745,657],{"class":283},[273,747,660],{"class":408},[273,749,405],{"class":404},[273,751,726],{"class":283},[273,753,668],{"class":283},[273,755,757,760,763,766,769,771,773,775,778],{"class":275,"line":756},9,[273,758,759],{"class":279},"buzzword-counter-rabbitmq",[273,761,762],{"class":283},"              ClusterIP",[273,764,765],{"class":650},"   10.43.0.48",[273,767,768],{"class":404},"      \u003C",[273,770,657],{"class":283},[273,772,660],{"class":408},[273,774,405],{"class":404},[273,776,777],{"class":283},"        4369/TCP,5672/TCP,25672/TCP,15672/TCP",[273,779,780],{"class":283},"   18m\n",[273,782,784,787,790,792,794,796,798,800,802],{"class":275,"line":783},10,[273,785,786],{"class":279},"buzzword-counter-rabbitmq-headless",[273,788,789],{"class":283},"     ClusterIP",[273,791,740],{"class":283},[273,793,743],{"class":404},[273,795,657],{"class":283},[273,797,660],{"class":408},[273,799,405],{"class":404},[273,801,777],{"class":283},[273,803,780],{"class":283},[249,805,806,807,809],{},"Let's see how this works. From within your running Ubuntu bash, you can now call the ",[372,808,683],{}," service on port\n9000:",[264,811,813],{"className":266,"code":812,"language":268,"meta":269,"style":269},"root@6178770cd6b1:/# wget -O- buzzword-counter:9000\n--2022-04-26 13:41:43--  http://buzzword-counter:9000/\nResolving buzzword-counter (buzzword-counter)... 10.43.221.222\nConnecting to buzzword-counter (buzzword-counter)|10.43.221.222|:9000... connected.\nHTTP request sent, awaiting response... 200 OK\nLength: 565 [text/html]\nSaving to: 'STDOUT'\n\n-                                                0%[                                                                                                   ]       0  --.-KB/s               \u003Ch1>Buzzwords\u003C/h1>\n\u003Cform action=\"/increase-counter/\" method=\"post\">\n    \u003Cinput type=\"hidden\" name=\"csrfmiddlewaretoken\" value=\"HrGPa8q6GyjVi5ZeHsf4noTFZoOpxA78OmpOEe8cWut8uyeuVxyZ8wPLN0e3QISM\">\n    \u003Ctable>\n        \u003Ctr>\n            \u003Cth>Buzzword\u003C/th>\n            \u003Cth>Count\u003C/th>\n            \u003Cth>Increase\u003C/th>\n            \u003Cth>Decrease\u003C/th>\n        \u003C/tr>\n    \n    \u003C/table>\n    \u003Cdiv>\n        \u003Clabel for=\"new_buzzword\">New Buzzword:\u003C/label>\n        \u003Cinput type=\"text\" id=\"new_buzzword\" name=\"new_buzzword\">\n        \u003Cbutton type=\"submit\">Submit\u003C/button>\n    \u003C/div>\n\u003C/form>\n-                                              100%[==================================================================================================>]     565  --.-KB/s    in 0s      \n\n2022-04-26 13:41:43 (18.9 MB/s) - written to stdout [565/565]\n",[226,814,815,827,838,849,876,899,910,926,930,968,1000,1041,1051,1062,1078,1092,1106,1120,1130,1136,1146,1156,1192,1226,1258,1268,1278,1306,1311],{"__ignoreMap":269},[273,816,817,819,821,824],{"class":275,"line":276},[273,818,555],{"class":279},[273,820,572],{"class":283},[273,822,823],{"class":283}," -O-",[273,825,826],{"class":283}," buzzword-counter:9000\n",[273,828,829,832,835],{"class":275,"line":421},[273,830,831],{"class":279},"--2022-04-26",[273,833,834],{"class":283}," 13:41:43--",[273,836,837],{"class":283},"  http://buzzword-counter:9000/\n",[273,839,840,843,846],{"class":275,"line":428},[273,841,842],{"class":279},"Resolving",[273,844,845],{"class":283}," buzzword-counter",[273,847,848],{"class":408}," (buzzword-counter)... 10.43.221.222\n",[273,850,851,854,857,859,862,865,868,870,873],{"class":275,"line":641},[273,852,853],{"class":279},"Connecting",[273,855,856],{"class":283}," to",[273,858,845],{"class":283},[273,860,861],{"class":408}," (buzzword-counter)",[273,863,864],{"class":404},"|",[273,866,867],{"class":279},"10.43.221.222",[273,869,864],{"class":404},[273,871,872],{"class":279},":9000...",[273,874,875],{"class":283}," connected.\n",[273,877,878,881,884,887,890,893,896],{"class":275,"line":671},[273,879,880],{"class":279},"HTTP",[273,882,883],{"class":283}," request",[273,885,886],{"class":283}," sent,",[273,888,889],{"class":283}," awaiting",[273,891,892],{"class":283}," response...",[273,894,895],{"class":650}," 200",[273,897,898],{"class":283}," OK\n",[273,900,901,904,907],{"class":275,"line":680},[273,902,903],{"class":279},"Length:",[273,905,906],{"class":650}," 565",[273,908,909],{"class":408}," [text/html]\n",[273,911,912,915,918,921,924],{"class":275,"line":706},[273,913,914],{"class":279},"Saving",[273,916,917],{"class":283}," to:",[273,919,920],{"class":404}," '",[273,922,923],{"class":283},"STDOUT",[273,925,468],{"class":404},[273,927,928],{"class":275,"line":731},[273,929,425],{"emptyLinePlaceholder":424},[273,931,932,935,938,941,944,947,950,953,956,959,962,965],{"class":275,"line":756},[273,933,934],{"class":279},"-",[273,936,937],{"class":283},"                                                0%[",[273,939,940],{"class":283},"                                                                                                   ]",[273,942,943],{"class":650},"       0",[273,945,946],{"class":283},"  --.-KB/s",[273,948,949],{"class":404},"               \u003C",[273,951,952],{"class":283},"h",[273,954,955],{"class":404},"1>",[273,957,958],{"class":283},"Buzzwords",[273,960,961],{"class":404},"\u003C",[273,963,964],{"class":283},"/h",[273,966,967],{"class":404},"1>\n",[273,969,970,972,975,978,980,983,985,988,990,992,995,997],{"class":275,"line":783},[273,971,961],{"class":404},[273,973,974],{"class":408},"form action",[273,976,977],{"class":404},"=",[273,979,412],{"class":404},[273,981,982],{"class":283},"/increase-counter/",[273,984,412],{"class":404},[273,986,987],{"class":408}," method",[273,989,977],{"class":404},[273,991,412],{"class":404},[273,993,994],{"class":283},"post",[273,996,412],{"class":404},[273,998,999],{"class":404},">\n",[273,1001,1003,1006,1009,1012,1014,1017,1019,1022,1024,1027,1029,1032,1034,1037,1039],{"class":275,"line":1002},11,[273,1004,1005],{"class":404},"    \u003C",[273,1007,1008],{"class":279},"input",[273,1010,1011],{"class":283}," type=",[273,1013,412],{"class":404},[273,1015,1016],{"class":283},"hidden",[273,1018,412],{"class":404},[273,1020,1021],{"class":283}," name=",[273,1023,412],{"class":404},[273,1025,1026],{"class":283},"csrfmiddlewaretoken",[273,1028,412],{"class":404},[273,1030,1031],{"class":283}," value=",[273,1033,412],{"class":404},[273,1035,1036],{"class":283},"HrGPa8q6GyjVi5ZeHsf4noTFZoOpxA78OmpOEe8cWut8uyeuVxyZ8wPLN0e3QISM",[273,1038,412],{"class":404},[273,1040,999],{"class":404},[273,1042,1044,1046,1049],{"class":275,"line":1043},12,[273,1045,1005],{"class":404},[273,1047,1048],{"class":279},"table",[273,1050,999],{"class":408},[273,1052,1054,1057,1060],{"class":275,"line":1053},13,[273,1055,1056],{"class":404},"        \u003C",[273,1058,1059],{"class":279},"tr",[273,1061,999],{"class":408},[273,1063,1065,1067,1070,1072,1075],{"class":275,"line":1064},14,[273,1066,743],{"class":404},[273,1068,1069],{"class":279},"th",[273,1071,405],{"class":408},[273,1073,1074],{"class":283},"Buzzword",[273,1076,1077],{"class":408},"\u003C/th>\n",[273,1079,1081,1083,1085,1087,1090],{"class":275,"line":1080},15,[273,1082,743],{"class":404},[273,1084,1069],{"class":279},[273,1086,405],{"class":408},[273,1088,1089],{"class":283},"Count",[273,1091,1077],{"class":408},[273,1093,1095,1097,1099,1101,1104],{"class":275,"line":1094},16,[273,1096,743],{"class":404},[273,1098,1069],{"class":279},[273,1100,405],{"class":408},[273,1102,1103],{"class":283},"Increase",[273,1105,1077],{"class":408},[273,1107,1109,1111,1113,1115,1118],{"class":275,"line":1108},17,[273,1110,743],{"class":404},[273,1112,1069],{"class":279},[273,1114,405],{"class":408},[273,1116,1117],{"class":283},"Decrease",[273,1119,1077],{"class":408},[273,1121,1123,1125,1128],{"class":275,"line":1122},18,[273,1124,1056],{"class":404},[273,1126,1127],{"class":279},"/tr",[273,1129,999],{"class":408},[273,1131,1133],{"class":275,"line":1132},19,[273,1134,1135],{"class":408},"    \n",[273,1137,1139,1141,1144],{"class":275,"line":1138},20,[273,1140,1005],{"class":404},[273,1142,1143],{"class":279},"/table",[273,1145,999],{"class":408},[273,1147,1149,1151,1154],{"class":275,"line":1148},21,[273,1150,1005],{"class":404},[273,1152,1153],{"class":279},"div",[273,1155,999],{"class":408},[273,1157,1159,1161,1164,1167,1169,1172,1174,1176,1179,1182,1184,1187,1190],{"class":275,"line":1158},22,[273,1160,1056],{"class":404},[273,1162,1163],{"class":279},"label",[273,1165,1166],{"class":283}," for=",[273,1168,412],{"class":404},[273,1170,1171],{"class":283},"new_buzzword",[273,1173,412],{"class":404},[273,1175,405],{"class":404},[273,1177,1178],{"class":283},"New",[273,1180,1181],{"class":283}," Buzzword:",[273,1183,961],{"class":404},[273,1185,1186],{"class":283},"/labe",[273,1188,1189],{"class":408},"l",[273,1191,999],{"class":404},[273,1193,1195,1197,1199,1201,1203,1205,1207,1210,1212,1214,1216,1218,1220,1222,1224],{"class":275,"line":1194},23,[273,1196,1056],{"class":404},[273,1198,1008],{"class":279},[273,1200,1011],{"class":283},[273,1202,412],{"class":404},[273,1204,520],{"class":283},[273,1206,412],{"class":404},[273,1208,1209],{"class":283}," id=",[273,1211,412],{"class":404},[273,1213,1171],{"class":283},[273,1215,412],{"class":404},[273,1217,1021],{"class":283},[273,1219,412],{"class":404},[273,1221,1171],{"class":283},[273,1223,412],{"class":404},[273,1225,999],{"class":404},[273,1227,1229,1231,1234,1236,1238,1241,1243,1245,1248,1250,1253,1256],{"class":275,"line":1228},24,[273,1230,1056],{"class":404},[273,1232,1233],{"class":279},"button",[273,1235,1011],{"class":283},[273,1237,412],{"class":404},[273,1239,1240],{"class":283},"submit",[273,1242,412],{"class":404},[273,1244,405],{"class":404},[273,1246,1247],{"class":283},"Submit",[273,1249,961],{"class":404},[273,1251,1252],{"class":283},"/butto",[273,1254,1255],{"class":408},"n",[273,1257,999],{"class":404},[273,1259,1261,1263,1266],{"class":275,"line":1260},25,[273,1262,1005],{"class":404},[273,1264,1265],{"class":279},"/div",[273,1267,999],{"class":408},[273,1269,1271,1273,1276],{"class":275,"line":1270},26,[273,1272,961],{"class":404},[273,1274,1275],{"class":408},"/form",[273,1277,999],{"class":404},[273,1279,1281,1283,1286,1288,1290,1292,1295,1297,1300,1303],{"class":275,"line":1280},27,[273,1282,934],{"class":279},[273,1284,1285],{"class":283},"                                              100%[=================================================================================================",[273,1287,977],{"class":408},[273,1289,405],{"class":404},[273,1291,437],{"class":283},[273,1293,1294],{"class":650},"     565",[273,1296,946],{"class":283},[273,1298,1299],{"class":283},"    in",[273,1301,1302],{"class":283}," 0s",[273,1304,1305],{"class":408},"      \n",[273,1307,1309],{"class":275,"line":1308},28,[273,1310,425],{"emptyLinePlaceholder":424},[273,1312,1314,1317,1320,1323,1326,1329,1331,1334],{"class":275,"line":1313},29,[273,1315,1316],{"class":279},"2022-04-26",[273,1318,1319],{"class":283}," 13:41:43",[273,1321,1322],{"class":408}," (18.9 ",[273,1324,1325],{"class":283},"MB/s",[273,1327,1328],{"class":408},") - written to stdout ",[273,1330,431],{"class":404},[273,1332,1333],{"class":408},"565/565",[273,1335,585],{"class":404},[249,1337,1338,1339,1343,1344,1347,1348,1351],{},"Et voila! The service responded to the HTTP Get request with the same answer you would get with your browser at:\n",[212,1340,1341],{"href":1341,"rel":1342,"target":222},"http://buzzword-counter.127.0.0.1.nip.io:8080",[221],".\nYou can now look around and make yourself familiar with the services\nin this namespace - or even connect with the ",[226,1345,1346],{},"psql"," client to the ",[372,1349,1350],{},"PostgreSQL"," instance running in the cluster.",[524,1353,1355],{"id":1354},"remove-the-ubuntu-container","Remove the Ubuntu container",[249,1357,1358,1359,1362],{},"Once you are done with your work, you can remove this Ubuntu instance again with:\n",[226,1360,1361],{},"docker kill myubuntu",". That's it.",[186,1364,1366],{"id":1365},"remove-the-development-infrastructure","Remove the Development Infrastructure",[249,1368,1369,1370,1373,1374,1376],{},"First run ",[226,1371,1372],{},"gefyra down"," to uninstall Gefyra's components. If you have initially created the development infrastructure using ",[226,1375,223],{}," you can now run:",[264,1378,1380],{"className":266,"code":1379,"language":268,"meta":269,"style":269},"> deck remove --cluster https://github.com/Blueshoe/buzzword-charts.git\n\n[INFO] Deleting the k3d cluster with name another-cluster\n",[226,1381,1382,1389,1393],{"__ignoreMap":269},[273,1383,1384,1386],{"class":275,"line":276},[273,1385,405],{"class":404},[273,1387,1388],{"class":408}," deck remove --cluster https://github.com/Blueshoe/buzzword-charts.git\n",[273,1390,1391],{"class":275,"line":421},[273,1392,425],{"emptyLinePlaceholder":424},[273,1394,1395,1397,1399,1401],{"class":275,"line":428},[273,1396,431],{"class":404},[273,1398,434],{"class":408},[273,1400,437],{"class":404},[273,1402,1403],{"class":408}," Deleting the k3d cluster with name another-cluster\n",[249,1405,1406],{},"If you created the infrastructure yourself, you probably already know how to get rid of everything yourself ;-)",[1408,1409,1410],"style",{},"html pre.shiki code .sBMFI, html code.shiki .sBMFI{--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}html pre.shiki code .sbssI, html code.shiki .sbssI{--shiki-light:#F76D47;--shiki-default:#F78C6C;--shiki-dark:#F78C6C}",{"title":269,"searchDepth":421,"depth":421,"links":1412},[1413,1414,1415,1416,1417,1418,1422],{"id":188,"depth":421,"text":189},{"id":205,"depth":421,"text":206},{"id":246,"depth":421,"text":247},{"id":333,"depth":421,"text":334},{"id":350,"depth":421,"text":351},{"id":386,"depth":421,"text":387,"children":1419},[1420,1421],{"id":526,"depth":428,"text":527},{"id":1354,"depth":428,"text":1355},{"id":1365,"depth":421,"text":1366},"This example demonstrates how to run a local Ubuntu container instance as part of your Kubernetes namespace.","md",null,{},{"title":131,"icon":134},{"title":177,"description":1423},"0sBaJ9DmUH01DWba05CnlYmJ5F9iaO9VacGVrjiKxb0",[1431,1433],{"title":127,"path":128,"stem":129,"description":1432,"icon":98,"children":-1},"This guide will show you how to use Gefyra for the local development of a Kubernetes Application running in GKE. Gefyra is able to spin up a local container which behaves like it was part of the cluster already. This way you can run services inside the cluster without abstaining from features like hot code reload. Sounds good? Lets go!",{"title":141,"path":142,"stem":143,"description":1434,"icon":144,"children":-1},"In order to write software for and with Kubernetes, obviously a Kubernetes cluster is required. There are already a number of Kubernetes distributions available to run everything locally. A cloud-based Kubernetes cluster can be connected as well in order to spare the development computer from blasting off. A working KUBECONFIG connection is required with appropriate permissions which should always be the case for local clusters. Gefyra installs the required cluster-side components by itself once a development setup is about to be established.",1775752112320]