From e1a7c810f2e35b70e64e30fc2e6d66a1f30f1cac Mon Sep 17 00:00:00 2001 From: John Mulhausen Date: Wed, 10 Feb 2016 12:29:07 -0800 Subject: [PATCH] kubectl for Docker test --- .DS_Store | Bin 10244 -> 8196 bytes _data/v1_1/reference.yml | 2 +- _site/README.md | 2 + _site/css/styles.css | 1 + _site/images/github_icon.png | Bin 0 -> 5987 bytes _site/images/nav_logo.svg | 1 + _site/images/nav_logo2.svg | 1 + _site/images/slack_icon.png | Bin 0 -> 6662 bytes _site/images/social_sprite.png | Bin 0 -> 2218 bytes _site/images/stackoverflow_icon.png | Bin 0 -> 6666 bytes _site/images/texture.png | Bin 0 -> 35987 bytes _site/images/twitter_icon.png | Bin 0 -> 5241 bytes _site/images/wheel.png | Bin 0 -> 2031 bytes _site/index.html | 119 +++++ _site/js/script.js | 1 + _site/v1.1/guides/index.html | 208 ++++++++ _site/v1.1/index.html | 208 ++++++++ .../docker-cli-to-kubectl/index.html | 473 ++++++++++++++++++ _site/v1.1/reference/index.html | 210 ++++++++ _site/v1.1/samples/index.html | 177 +++++++ _site/v1.1/support/index.html | 175 +++++++ v1.1/reference/docker-cli-to-kubectl.md | 342 +++++++++++++ 22 files changed, 1919 insertions(+), 1 deletion(-) create mode 100644 _site/README.md create mode 100755 _site/css/styles.css create mode 100755 _site/images/github_icon.png create mode 100755 _site/images/nav_logo.svg create mode 100755 _site/images/nav_logo2.svg create mode 100755 _site/images/slack_icon.png create mode 100755 _site/images/social_sprite.png create mode 100755 _site/images/stackoverflow_icon.png create mode 100755 _site/images/texture.png create mode 100755 _site/images/twitter_icon.png create mode 100755 _site/images/wheel.png create mode 100644 _site/index.html create mode 100755 _site/js/script.js create mode 100644 _site/v1.1/guides/index.html create mode 100644 _site/v1.1/index.html create mode 100644 _site/v1.1/reference/docker-cli-to-kubectl/index.html create mode 100644 _site/v1.1/reference/index.html create mode 100644 _site/v1.1/samples/index.html create mode 100644 _site/v1.1/support/index.html create mode 100644 v1.1/reference/docker-cli-to-kubectl.md diff --git a/.DS_Store b/.DS_Store index 4c7803dc156ed96ec58f09cb713baa8995b1bf4e..e6206cd460b46d312bf46f58457d4687eba710a9 100644 GIT binary patch delta 123 zcmZn(XmOBWU|?W$DortDU;r^WfEYvza8E20o2aMAD7rCVH$S83WFCR!$tJ?Wo7V~E zuuOIqSKlltrpUOtTjC<4ATv-s5J+$X30IKTjfLNtC-bWWaxg*+WSAV!Gj(#1xCBho GIYt1vI2jB8 delta 284 zcmZp1XbF&DU|?W$DortDU{C-uIe-{M3-C-V6q~50$SAonU^hRbgXF;P}{X=@sg#>majN;WbzzgdFi7-%}7R;1sCPzx$6z%1orpT4(d6wyJ13tP4QDjktS.title{color:#000;padding-left:0}.pi-accordion a.item>.title:hover{color:#3371e3}.pi-accordion div.item>.title:before{content:"";position:absolute;top:9px;left:2px;border-style:solid;border-width:5px 0 5px 8px;border-color:transparent transparent transparent #3371e3;-webkit-transform:rotate(0deg);transform:rotate(0deg);transition:.3s}.pi-accordion .wrapper{position:relative;width:100%;transition:.3s}.pi-accordion .content{padding-left:20px;opacity:0;transition:.3s;padding-bottom:20px}.pi-accordion .item.on>.title:before{-webkit-transform:rotate(90deg);transform:rotate(90deg)}.pi-accordion .item.on>.wrapper>.content{opacity:1}.pi-dialog .dialog-box{position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.pi-dialog .title{font-size:36px;text-align:center;padding:30px 0}.pi-dialog .content-box{color:#222;max-width:600px;overflow:hidden}.pi-dialog .content-box .content{padding:30px;border-radius:4px;background-color:#fff}.pi-dialog .content-box .buttons{border-top:1px solid #000;text-align:right;margin-top:30px}.pi-dialog .content-box .buttons button{color:#0f9;border-color:#0f9;border-radius:4px;transition:.3s}.pi-dialog .content-box .buttons button:hover{background-color:#0f9;color:#000}.pi-pushmenu{display:none;position:fixed;top:0;width:100%;height:100%;opacity:0;transition:opacity .3s}.pi-pushmenu.on{opacity:1}.pi-pushmenu .overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:rgba(0,0,0,.4)}.pi-pushmenu .sled{position:absolute;top:0;width:0;height:100%;background-color:#fff;overflow:auto;transition:width .3s}.pi-pushmenu.on .sled{width:320px}.pi-pushmenu .top-bar{height:0;line-height:60px;background-color:#444}.pi-pushmenu .pi-modal-close-button{position:absolute;top:10px;right:10px;z-index:1}.pi-pushmenu .pi-modal-close-button:after,.pi-pushmenu .pi-modal-close-button:before{background-color:#222}.pi-pushmenu ul{padding:0 60px 0 20px}.pi-pushmenu li{position:relative;display:block;width:100%;min-height:44px}.pi-pushmenu a{display:inline-block;width:100%;height:44px;line-height:44px;font-weight:700;font-size:20px;color:#3371e3}.pi-pushmenu .button{background:none;padding:0}.pi-pushmenu ul ul{padding:0 20px}.pi-pushmenu ul ul li{min-height:40px}.pi-pushmenu ul ul a{height:40px;line-height:40px;font-size:18px;color:#555}body,html{margin:0;padding:0}button,input{outline:none}button{cursor:pointer}li,ul{list-style:none}ul{margin:0;padding:0}a{text-decoration:none}.light-text{color:#fff}.right{float:right}.left{float:left}.center{text-align:center}h1{font-size:40px;line-height:50px}h2{font-size:42px;line-height:60px}h3{line-height:32px}h3,h4{font-size:26px}h4{line-height:40px}h5{font-size:18px;line-height:36px}p{font-size:20px;line-height:28px}#vendorStrip,footer,header,section{padding-left:20px;padding-right:20px}#vendorStrip main,footer main,header main,section main{width:100%;max-width:100%}.logo,header{height:50px}.logo{width:120px}.nav-buttons{height:50px;line-height:50px}.nav-buttons .button+*{margin-left:30px}#hamburger{width:50px;height:50px}#mainNav{padding:140px 0 30px}#mainNav h5{margin-bottom:1em}#mainNav h3{margin-bottom:.6em}#mainNav .nav-box{width:20%}#mainNav .nav-box+.nav-box{margin-left:6.66667%}#mainNav main+main{margin-top:60px}#mainNav .left .button{height:50px;line-height:50px;font-size:18px}.open-nav #tryKubernetes,.y-enough #tryKubernetes{margin-left:30px}#hero{padding-top:80px}#docs #hero h1,#docs #hero h5{padding-left:20px;padding-right:20px}#headlineWrapper,#quickstartButton{margin-bottom:40px}#quickstartButton{padding:0 50px}#vendorStrip{height:60px;line-height:60px;font-size:18px}#vendorStrip img{max-height:30px;max-width:100px;margin-left:50px}#oceanNodes{padding-top:60px;padding-bottom:60px}#video{height:200px}#features h3{margin-bottom:20px}#features .feature-box{margin-bottom:0}#features .feature-box>div{width:100%;margin-bottom:40px}body{background-color:#303030;background-image:url(../images/texture.png)}section{position:relative;background-color:#fff}footer main,header main,section main{position:relative;margin:auto}h3{text-align:center;color:#3371e3}.button{display:inline-block;border-radius:6px;padding:0 20px;line-height:40px;color:#fff;background-color:#3371e3;text-decoration:none}#cellophane{height:100%;display:none}#cellophane,header{position:fixed;top:0;left:0;width:100%}header{z-index:4;background-color:transparent;box-shadow:0 0 0 transparent;overflow:hidden;transition:.3s}.logo{float:left;background-image:url(../images/nav_logo.svg);background-size:contain;background-position:center center;background-repeat:no-repeat}.nav-buttons{float:right}#tryKubernetes,#viewDocs{display:none}#viewDocs{border:1px solid #fff;background-color:transparent;transition:.3s}#viewDocs:hover{background-color:#fff;color:#303030}#tryKubernetes{width:0;margin-left:0;text-align:center;overflow:hidden;white-space:nowrap;transition:.3s}#hamburger,#tryKubernetes{padding:0;vertical-align:middle}#hamburger{display:inline-block;position:relative;border:0;background:none}#hamburger:after,#hamburger:before,#hamburger div{position:absolute;left:15%;width:70%;height:2px;background-color:#3371e3;transition:.3s;content:""}#hamburger div{top:calc(50% - 1px)}#hamburger:before{top:24%}#hamburger:after{bottom:24%}#hamburger:hover:after,#hamburger:hover:before,#hamburger:hover div{background-color:#fff}#mainNav h5{color:#3371e3;font-weight:400}#mainNav main{white-space:nowrap;overflow:hidden;clear:both}#mainNav .nav-box{float:left;white-space:normal}#mainNav h3 a{color:#3371e3;text-decoration:none}.flip-nav header{background-color:#fff}.open-nav body{overflow:hidden}.open-nav #cellophane{display:block;z-index:5}.open-nav header{background-color:#f7f7f7;z-index:6}.open-nav #hamburger div{opacity:0}.open-nav #hamburger:after,.open-nav #hamburger:before{left:12px;-webkit-transform-origin:0 1px;transform-origin:0 1px}.open-nav #hamburger:before{-webkit-transform:rotate(45deg);transform:rotate(45deg)}.open-nav #hamburger:after{-webkit-transform:rotate(-45deg);transform:rotate(-45deg)}.open-nav #tryKubernetes,.y-enough #tryKubernetes{width:160px}.flip-nav header,.open-nav header{box-shadow:0 1px 2px #4c4c4c}.flip-nav header .logo,.open-nav header .logo{background-image:url(../images/nav_logo2.svg)}.flip-nav #viewDocs,.open-nav #viewDocs{border-color:#303030;color:#303030}.flip-nav #viewDocs:hover,.open-nav #viewDocs:hover{border-color:#3371e3;background-color:#3371e3;color:#fff}.flip-nav #hamburger:hover:after,.flip-nav #hamburger:hover:before,.flip-nav #hamburger:hover div,.open-nav #hamburger:hover:after,.open-nav #hamburger:hover:before,.open-nav #hamburger:hover div{background-color:#303030}#hero{background-color:transparent;text-align:center;padding-left:0;padding-right:0}#headlineWrapper{text-align:center;padding:0 20px}#quickstartButton{display:none;font-size:24px;line-height:50px;padding:0 50px}#vendorStrip{display:none;background-color:hsla(0,0%,100%,.1);font-weight:100;white-space:nowrap;text-align:left}#vendorStrip div{height:100%;display:inline-block}#vendorStrip div,#vendorStrip img{vertical-align:middle}#oceanNodes main{margin-bottom:60px}#oceanNodes .image-wrapper{max-width:75%;margin:0 auto 20px}#oceanNodes .image-wrapper img{width:100%}#oceanNodes main:first-child .image-wrapper{max-width:100%}#oceanNodes h3{margin-bottom:30px}#video{width:100%;position:relative;background-image:url(../images/kub_video_thm.jpg);background-position:center center;background-size:cover}#video>.light-text{display:none;position:absolute;top:50%;left:75%;width:50%;max-width:600px;min-width:500px;padding-right:10%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);color:#fff}#video h2{font-size:32px;line-height:44px}#video h2,#video p{margin-bottom:20px}#video #desktopShowVideoButton{position:relative;font-size:24px;background-color:#fff;border-radius:8px;color:#3371e3;padding:15px 30px 15px 80px}#video #desktopShowVideoButton:before{content:"";position:absolute;top:50%;left:40px;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);width:0;height:0;border-style:solid;border-width:10px 0 10px 20px;border-color:transparent transparent transparent #3371e3}#video #mobileShowVideoButton{left:50%;width:80px;height:80px;border-radius:50%;background-color:transparent;border:5px solid hsla(0,0%,100%,.2);overflow:visible}#video #mobileShowVideoButton,#video #mobileShowVideoButton:after{position:absolute;top:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}#video #mobileShowVideoButton:after{left:50%;left:40px;content:"";width:0;height:0;border-style:solid;border-width:20px 0 20px 30px;border-color:transparent transparent transparent #fff}#features{padding-top:140px;background-color:#f7f7f7;background-image:url(../images/wheel.png);background-position:center 60px;background-repeat:no-repeat;background-size:auto}.feature-box{width:100%;overflow:hidden;clear:both}.feature-box h4{line-height:normal;margin-bottom:15px}.feature-box>div:first-child{float:left}.feature-box>div:last-child{float:right}#talkToUs main{padding:50px 0}#talkToUs h3,#talkToUs h4{text-align:center}#talkToUs h3{margin-bottom:15px}#talkToUs h4{line-height:normal;margin-bottom:50px}#talkToUs #bigSocial{overflow:hidden}#talkToUs #bigSocial div{width:calc(25% - 15px);float:left;padding:30px;padding-top:110px;background-position:center top;background-size:auto;background-repeat:no-repeat}#talkToUs #bigSocial div:nth-child(1){background-image:url(../images/twitter_icon.png)}#talkToUs #bigSocial div:nth-child(2){background-image:url(../images/github_icon.png)}#talkToUs #bigSocial div:nth-child(3){background-image:url(../images/slack_icon.png)}#talkToUs #bigSocial div:nth-child(4){background-image:url(../images/stackoverflow_icon.png)}#talkToUs #bigSocial div+div{margin-left:20px}#talkToUs #bigSocial a{display:inline-block;color:#3371e3;font-size:24px;font-weight:400;text-decoration:none;margin-bottom:15px}footer main{padding:40px 0}footer nav{text-align:center;white-space:nowrap}footer nav a{display:inline-block;font-size:32px;font-weight:300;color:#fff;text-decoration:none}footer nav a+a{margin-left:10%}footer .social{position:relative;margin:80px 0 60px}footer .social label{float:right;display:inline-block;height:50px;line-height:50px;font-weight:100;white-space:nowrap}footer .social label input{background-color:transparent;padding:10px;font-size:16px;font-weight:100;color:#fff;border:1px solid #fff;margin-left:8px;width:300px;transition:.3s}footer .social label input:focus{background-color:#f7f7f7;color:#303030}.social a{display:inline-block;background-image:url(../images/social_sprite.png);background-repeat:no-repeat;background-size:auto;width:50px;height:50px;border-radius:5px;margin-right:30px}.social a:hover{background-color:#fff}.social a span{position:absolute;display:block;height:0;overflow:hidden}a.twitter{background-position:0 0}a.twitter:hover{background-position:0 100%}a.stack-overflow{background-position:-50px 0}a.stack-overflow:hover{background-position:-50px 100%}a.slack{background-position:-100px 0}a.slack:hover{background-position:-100px 100%}a.github{background-position:-150px 0}a.github:hover{background-position:-150px 100%}a.mailing-list{background-position:-200px 0}a.mailing-list:hover{background-position:-200px 100%}iframe{width:80vw;height:45vw;max-width:142.22222vh;max-height:80vh;position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}#docs #viewDocs{display:none}#docs section{background-color:#fff}#docs #hero{background-color:transparent}#docs #hero h5{margin-bottom:40px}#docs #vendorStrip{position:relative;white-space:nowrap}#docs #vendorStrip ul{float:left}#docs #vendorStrip li{display:inline-block;height:100%}#docs #vendorStrip a{display:block;height:100%;color:#fff}#docs #vendorStrip #search,#docs #vendorStrip li+li{margin-left:60px}#docs #vendorStrip #search{position:absolute;right:250px;padding:0 10px;margin:10px 0 0;height:40px;line-height:40px;border:1px solid #f7f7f7;font-size:16px;font-weight:100;color:#fff;vertical-align:middle}#docs #vendorStrip .dropdown{position:absolute;right:50px;height:60px;font-size:20px;color:#fff;line-height:60px;cursor:pointer;overflow:hidden;z-index:3}#docs #vendorStrip .dropdown.on{height:auto}#docs #vendorStrip .dropdown .readout{padding-left:10px;padding-right:40px;transition:.3s}#docs #vendorStrip .dropdown .readout:after{content:"";position:absolute;top:30px;right:10px;width:0;height:0;border-style:solid;border-width:6px 6px 0;border-color:#fff transparent transparent;transition:.3s}#docs #vendorStrip .dropdown.on .readout{background-color:#f7f7f7;color:#303030}#docs #vendorStrip .dropdown.on .readout:after{border-top-color:#303030}#docs #vendorStrip .dropdown a{display:block;width:100%;height:30px;line-height:30px;padding:0 10px;font-size:16px;font-weight:300;background-color:#f7f7f7;color:#303030;opacity:0;transition:.3s}#docs #vendorStrip .dropdown a:hover{background-color:#ccc}#docs #vendorStrip .dropdown.on a{opacity:1}#docs #encyclopedia{position:relative;min-height:100vh;padding:50px}#docs #encyclopedia>div{height:100%}#docs #encyclopedia #docsToc{float:left;width:350px;padding:0 20px 0 0;border-right:1px solid #ccc}#docs #encyclopedia #docsContent{float:right;width:calc(100% - 400px)}@media screen and (min-width:750px){h1{font-size:60px;line-height:90px}h2{font-size:42px;line-height:60px}h3{font-size:30px}h3,h4{line-height:40px}h4{font-size:26px}h5{font-size:22px;line-height:36px}p{font-size:20px;line-height:28px}#vendorStrip,footer,header,section{padding-left:20px;padding-right:20px}#vendorStrip main,footer main,header main,section main{width:100%;max-width:100%}.logo,header{height:60px}.logo{width:120px}.nav-buttons{height:60px;line-height:60px}.nav-buttons .button+*{margin-left:30px}#hamburger{width:50px;height:50px}#mainNav{padding:140px 0 30px}#mainNav h5{margin-bottom:1em}#mainNav h3{margin-bottom:.6em}#mainNav .nav-box{width:20%}#mainNav .nav-box+.nav-box{margin-left:6.66667%}#mainNav main+main{margin-top:60px}#mainNav .left .button{height:50px;line-height:50px;font-size:18px}.open-nav #tryKubernetes,.y-enough #tryKubernetes{margin-left:30px}#hero{padding-top:80px}#docs #hero h1,#docs #hero h5{padding-left:20px;padding-right:20px}#headlineWrapper,#quickstartButton{margin-bottom:40px}#quickstartButton{padding:0 50px}#vendorStrip{height:60px;line-height:60px;font-size:18px}#vendorStrip img{max-height:30px;max-width:100px;margin-left:50px}#oceanNodes{padding-top:60px;padding-bottom:60px}#oceanNodes main{margin-bottom:60px}#video{height:400px}#features h3{margin-bottom:40px}#features .feature-box{margin-bottom:60px}#features .feature-box>div{width:45%;margin-bottom:0}#docs #hero h1,#docs #hero h5{text-align:left}#tryKubernetes,#viewDocs{display:inline-block}#vendorStrip{display:block}#quickstartButton{display:inline-block}#oceanNodes h3{text-align:left}#oceanNodes main{position:relative;clear:both}#oceanNodes main .image-wrapper{position:absolute;top:50%;max-width:25%;max-height:100%;-webkit-transform:translateY(-50%);transform:translateY(-50%)}#oceanNodes main:nth-child(odd) .content{padding-right:30%}#oceanNodes main:nth-child(odd) .image-wrapper{right:0}#oceanNodes main:nth-child(even) .content{padding-left:30%}#oceanNodes main:nth-child(even) .image-wrapper{left:0}#oceanNodes main:nth-child(1) .content{padding-right:0}#oceanNodes main:nth-child(1) .image-wrapper{position:relative;max-width:100%;-webkit-transform:none;transform:none}#oceanNodes main img{width:100%}#video,#video>.light-text{display:block}#mobileShowVideoButton{display:none}#features{padding-bottom:60px}#features .feature-box:last-child{margin-bottom:0}}@media screen and (min-width:1025px){h1{font-size:60px;line-height:90px}h2{font-size:42px;line-height:60px}h3{font-size:30px}h3,h4{line-height:40px}h4{font-size:26px}h5{font-size:22px;line-height:36px}p{font-size:20px;line-height:28px}#vendorStrip,footer,header,section{padding-left:50px;padding-right:50px}#vendorStrip main,footer main,header main,section main{width:100%;max-width:1200px}.logo,header{height:80px}.logo{width:180px}.nav-buttons{height:80px;line-height:80px}.nav-buttons .button+*{margin-left:30px}#hamburger{width:50px;height:50px}#mainNav{padding:140px 0 30px}#mainNav h5{margin-bottom:1em}#mainNav h3{margin-bottom:.6em}#mainNav .nav-box{width:20%}#mainNav .nav-box+.nav-box{margin-left:6.66667%}#mainNav main+main{margin-top:60px}#mainNav .left .button{height:50px;line-height:50px;font-size:18px}.open-nav #tryKubernetes,.y-enough #tryKubernetes{margin-left:30px}#hero{padding-top:80px}#docs #hero h1,#docs #hero h5{padding-left:50px;padding-right:50px}#headlineWrapper,#quickstartButton{margin-bottom:40px}#quickstartButton{padding:0 50px}#vendorStrip{height:60px;line-height:60px;font-size:18px}#vendorStrip img{max-height:30px;max-width:100px;margin-left:50px}#oceanNodes{padding-top:60px;padding-bottom:60px}#oceanNodes main{margin-bottom:60px}#video{height:550px}#features h3{margin-bottom:40px}#features .feature-box{margin-bottom:60px}#features .feature-box>div{width:45%;margin-bottom:0}#oceanNodes main:nth-child(1){padding-right:50%}#oceanNodes main:nth-child(1) .image-wrapper{position:absolute;max-width:50%;-webkit-transform:translateY(-50%);transform:translateY(-50%)}#video{position:relative;background-image:url(../images/kub_video_thm.jpg);background-position:center center;background-size:cover;height:550px}}#encyclopedia{overflow:hidden;} diff --git a/_site/images/github_icon.png b/_site/images/github_icon.png new file mode 100755 index 0000000000000000000000000000000000000000..7dcb10d349faf56bbd1d205f8b7c2020aba89436 GIT binary patch literal 5987 zcmV-p7o6ycP)&*+AGp*ftvo8wemgJRDzr^%WK@SO5WY-b?Vd!%a<=let!Pl%btphv1ZL0 zbnDiw#_PKO{`+zK`0<7V!qwHa#+x;6ojZ4iv$M0%AWK_OQ4!M9(-9RFg}}f-Y~Q|J zobTx9C>sAAUteDwIB)=G&z{Bg>(`-HtIhiH^76tZbK= z(4av$b?Ox2%SS5%dLxxx_2oAez3LdNu#MG%%tro=a;lmq_kKm-u zT0u0Z@b%KAOJ-TCwX}r`7d9La9KYWvv%Z%bXV)$+F4hm?{Q2{Eto#ZI0) zX}usg?CaB~k5xm^x7S~Py{;z!>kh=GO`9471by4EVT1L7C@CoslXwjYMAxoe#k9Fq zf$;S7Y)}yNZP%_{)&*kNuwe}nL>eL>Tp9!S%gQf3Xu+(1|wDJ3p66lOY)9lc?Ws6#yscqY~SqF%pfBw0a z%bAU_alto0VyFF34{Q|_zNMGobaKx z3ne5hJ}!;%6~ea&rAAn$pDPTnsjm~>5{PJD@ptr}v4$iEIiu6lPc|G7_V)HSy_p}r z7zHHnCqeidMkxzkm2?!^qAZjvWzghag7QoV32j%6!d93x{~EQZg!)jN3WPd49TiGB zwDMf2QlbTn(vy;gFpR^lf1r7@rZ+TGPEJnN0fH+pZn*r|r4!lm-NK}>kc0pULRosO zSzi?z6~PD-Fodazu?)k~YdxS+@*B$2!33bhd_L^*S(HZk=mvv7kg^}Mz8rN!5N>X6 z)&auX+xy0-ZBXB z9zoO=Torv~osPwkKb9cQWg}FwBJrN`9GS;xUjc$0_~md{w0)#ijn~h$Q&s_jtK(|Q zBigiXh09@X(8TYR1jR5&8`N1+Eo}7W)o}ZuFFZ!P3-@7fBPmF#KUG~gEY7P*3uWK~ZD?PFFZ>Q#wVEJhN?H*k^~=G-$U!w1Ja7Sl19Yb+$<@K zK@hz1g3C}87Q%PJDC`{jKJ`0PfbbkK04E$)iodOh4;7J=h@cX~;JSRK#p{3Ki6@Yo zn`=Fjes*?t7H@VZv%^&fVyGmnal^2E)IemOJVCZeMj&?8+B8*Z zgbylYSt!c90v`sf(>4KO)+=1T(MFHF<6W#3!8{#Rdp73JmS_a+Fg`>Cj? z5KUhLRMRxan>}BInjE4bcVLZ(lQbeVbf2)_K04FkZTEpNPdQ16s4U4P)8u0jfZ_(G ziNB-Gr!ZJ1gWtr_@M4XizI_-3{Vn!Ml17A7X#{29Ykr(!@%krDoOr|gzM~+x#IT^C zK-hXN20nD?5JEyiL=nJ_9XmwT^`C$KDHA`3Ye-2+L0nv%7|cOIK?06mzAWp52M_ACsR{%?P?D9E zbRIyR80LRCMM$Q)vJ(^8LUk} zlbM-`)YMe{V6NFmFr4h{Y+;`G88|jeT;s!y)sHWVDYM3Kxd}tz5yM);pp;4_zW(}a z^9t*3ok&1DX}70pbaT9ao<@g8X>tu(S+;WK5gi?k$jC_S z+qX|ZV%g|r#K1W3NJvN!-?L;v%zOl!8dfDH%+8ieCD{h@{CiAHjPMyX*teQJ5CO6D zc+}cCQ^l;O@#rmy_7S7AEb|;RIT>Qg!=N!1CiKcEAGsdrgxwQIBKo)4IuQOAvu_0l z1=Lh&F;M5Eql`2}aVFFxB<9?Pr`kEPt3Ji?*=L{KlILYJ#eS9tCR+^l6%2+a3>g-~ zxp?uSvGtKau$^Lo^An$}W~^d&>bU@hSiQ)sRm+EP++&q+jCvCy1jwV8oU%yXqAlbN z1|Q%j%#w;=6i4}rW96xUn`YW#b~j4jzcl-*pK3u$1U!G8Z5CkgLyc@1?o^J&0N9E! z7~bEtl1tw9@86F{AAQsW#?$TEBGT1f2tY(pF_z|v{4Iy8B>0mn=c3@y4wNT`Pz%MG zO-pgbf3wgOi*rsjU`B zycvG~VIq{|Ggv#+Iw2a?6Jq==YJ@6&FOuEuabWILB)k5O82dRmvUoa;bV)l**CDE{ zQ5c(|bHU>8das&~wvV(nD-^g3rIvRegucRK%9JU>`Bit|4)dqsQnv5Pj>0^9H=S>SiA4?t;+IFTM5NyV&Hn1AX3l3tl^R*6O>QbMQLGiWMs`bm&k~ zXWFb;vpZj#)aZV6=-3hc`t`${IdeoFR7bO^^#?+!P+-RNZ}DJ@7I^gW$I#>Te_*wz zGnOn_g7RAog}IuJa~h7fdETl`n>M#C{PykJi=2qFe@;4UllfXD2z>yip*)X^5qJCf z;Ze#P9wvL=d%!#BGpIk-Z@RsbcFykksZ@S)=XOExGz(|=_xN__G$ON9gZ)`5Y02|M zv{gixBHf3>@j1;+%dB>fByWx28a{6DmbOcp{|g0WV=ym{%7A# z#grM}A}6c%87kZFJLwjYfl$=SMTk#i&QG^kl#(z>-+NBIkYU?+QHTW>dQGJ5xa8(m)N zj_-e7h({l5gW10>#XtM>q6ljM)_S=LCvWL@oPPP`7qj;xA|kME-8wT6d@ldSQ}yQ? zc(w5_0iw259i6*(!{5^9bjM=N%jzY7K%DIDYuBItX4-`^$phjSCK@ zO`CRGzf8v8;T6L5>(^TZQQb6gW0T11AT|&+Y`g+EVZsD4-`~`NFKFAgEuMMi88Z;P zvSkSbPlH%`xSm1qTDuKIEi{A|)p^u%H3XXy77`a9aG`1bn&x=y!vfDBvkX1pa5M_E zKv{XkUll~9h1uCk6spT{L8igM>k90;SPbtxVCeMurXZR&gMCy6#x61k@zb7T_-gGo zvwGE;ZhJAuC&KLf39GijGYfD}lVfjY2~OmxkXfpQs(!)Lk4DJUTAV5-e0BV4rxlGu$%Ocz^0lGgI?>WFls{o3G|gvUjAuuA{l(7xtyT zy1n)$TraEOoS~w>DZ>V8n=Z)VmR5}LYo$mlRzqE0*|0%mDYfEeol|rINRnY|vJ6ht zJg!w>!(UXx_qf4P$`aWcbN}L0^1p*53fT zDR3siyIs-3F}aAE3|pu%n2mHz+tZ5?o2P_QThS0eR2mFXDc#TkGClg6-I^>X;md^p z9BJ=%S%Ysjc%tporgKb4|YuYbVy>A znx)jhJzWk5x-rKTxzP>lK+t<`nOgK4I}uHqwLr@@?eN^o|HQ!0r{br8Bk;Ih3D0bx zzn$qST!+8)z{Z4Z60`!_F01kTp>t@})^r8$`zo5G##9$V`qm)1Eaqf(DVcZhx%3ZcS5RSvj`RsA3c3WY7ZB#y-L&wHPao6 zB7O)+!;-@VSbJ83t*K=+;w$m_FQ$nc+j;w=$#5l~qBkw>*UGWT{|KIX-t@tk+3x$` zepQRjDQc`fqsHQcxtQsfis{}Lurjs?&Z*S_R1FfR6dout8bl03snZE7(+IxkkgE!D z6HaC~DK{B`&IDua85x#D7GeJW0?ZH3#oW+r(bk<;v259_B|BVCj(}IGmLRf}@d{ ztZt_C`wisKFP5mSPa~8RdAO3mwpxOaVy+$1$dqH*(L54Z76~jzw7Fq9SQwFu9|JS- z(;*p_pHN{{tjq*}9wxtMe^QR+QDs0C9~B zqkiPx1O#ivn)o6E2uZM6*m#b8NUo8l(1?$eObnYphE*l-9Q<-D59`kq3gNSM=mBmx zS0r)|M~i-|nkML-H4UbyTovjrdaYv+yva3M_+2U$;j5{ck{LP5>L3cMK(GMAv$2VU z@mrLsrtp4C5;@(3B6^)|05^xuVQpA{Rsu24NRu20gyc_Z4j%N!n}jCF5tFB?GXi%t zv*vnOz8RNPxk!|@7@Gwnhbx?}kw(ljn3Zg7CL6u-WPxskOYiaL8%eNhP8Uf6H`0i8 z2?Qdc(CGXsjc`t>7NQ!NDAulxNs@E+y;OoLrJA~iaQCM;iZ$h;YTP4TGFRL-=& zbQ*D5Z<_QrUk4(#fJVEqV6%nE(t|KWTJ&AkhIJ+&B=f}J^bwk|7HnqWCrMfxaJdx8 zay2R{D^QpAsNN_2)TAM4#Tx9tRw||u*aSG}z-*<_x|*D@h0QxMq%qR2!eq=-w>2nNrBmnQur7`_)v#30F5YK;V6c{d>38|x7q=3Xt;A~s)% zU`hbJ$Q-OC!Tu1Gg_*(G_@3I#;4G{s0sa<~k6HA34o6MYI7(Vi{$XWYAstJ;f!l13 zsK`;TjxWIXf!t4y)DQK!j?Q;Wm(0$gY=xLhDkv+zTmRqOy$Zs7eS+t73RLAt$t%Ng zG7 \ No newline at end of file diff --git a/_site/images/nav_logo2.svg b/_site/images/nav_logo2.svg new file mode 100755 index 00000000000..99cb6aa0b9d --- /dev/null +++ b/_site/images/nav_logo2.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/_site/images/slack_icon.png b/_site/images/slack_icon.png new file mode 100755 index 0000000000000000000000000000000000000000..bb5b1006ec9add029304cb781f75043e8e5eb50e GIT binary patch literal 6662 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 YG-IUkFl71AuyLJOBUy literal 0 HcmV?d00001 diff --git a/_site/images/stackoverflow_icon.png b/_site/images/stackoverflow_icon.png new file mode 100755 index 0000000000000000000000000000000000000000..ca3280d7a41a32815974a2f562998559be8af505 GIT binary patch literal 6666 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 Uzxqw4%>V!Z07*qoM6N<$g2^wWk^lez literal 0 HcmV?d00001 diff --git a/_site/images/texture.png b/_site/images/texture.png new file mode 100755 index 0000000000000000000000000000000000000000..856707b05915a9dc228992c54a00efd137387eaf GIT binary patch literal 35987 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 a&RQkHmcB41Y;^q<0eGyN^K&Q4mHz + + + + + + + + Kubernetes - Index test + + +
+
+ + + + +
+ + +
+

Index test

+
Cool content goes here
+ +
+ +
+
+
+ + + +
+
+
+ Yep. +
+
+ + + + + + + + + diff --git a/_site/js/script.js b/_site/js/script.js new file mode 100755 index 00000000000..e7c7fe3cb73 --- /dev/null +++ b/_site/js/script.js @@ -0,0 +1 @@ +function booleanAttributeValue(t,e,n){if(t.hasAttribute(e)){var o=t.getAttribute(e);if(""===o||"true"===o)return!0;if("false"===o)return!1}return n}function deepCopy(t){var e,n,o=Array.isArray(t)?[]:{};for(n in t)e=t[n],o[n]="object"==typeof e?copy(e):e;return o}function millisecondsForTransition(t,e){var n=getComputedStyle(t),o=n.transitionProperty.split(", ").indexOf(e);return 1e3*(parseFloat(n.transitionDuration.split(", ")[o])+parseFloat(n.transitionDelay.split(", ")[o]))}function pct(t){return t+"%"}function px(t){return t+"px"}var π,π1,πd;!function(){function t(t){return t.className?t.className.split(" "):[]}function e(){π.clean(e),π.mods.forEach(function(t){t()})}var n=document;n.g=n.getElementById,n.q=n.querySelector,n.a=n.querySelectorAll,n.t=n.getElementsByTagName,π=function(t){return n.a(t)},π1=function(t){return n.q(t)},πd=function(t){return n.g(t)},π.newDOMElement=function(t,e,o){var i=n.createElement(t);return e&&(i.className=e),o&&(i.id=o),i},π.contentElement=function(t,e,n,o){var i=π.newDOMElement(t,e,n);return o&&(o.nodeName?i.appendChild(o):i.innerHTML=o),i},π.srcElement=function(t,e,n,o){var i=π.newDOMElement(t,e,n);return o&&(i.src=o),i},π.button=function(t,e,n,o){var i=π.contentElement("button",t,e,n);return i.onclick=o,i},π.input=function(t,e,n,o,i,a){var r=document.createElement("input");return r.type=t,r.className=e||"",r.placeholder=n||"",r.value=o||"",r.checked=i||"",r.disabled=a||"",r},π.option=function(t,e,n,o){var i=π.contentElement("option",t,null,e);return i.value=n||null,i.selected=o||null,i},π.textarea=function(t,e,n){var o=document.createElement("textarea");return o.className=t||"",o.placeholder=e||"",o.value=n||"",o},π.clear=function(){return π.newDOMElement("clear")},π.div=function(t,e,n){return π.contentElement("div",t,e,n)},π.h1=function(t,e,n){return π.contentElement("h1",t,e,n)},π.h2=function(t,e,n){return π.contentElement("h2",t,e,n)},π.h3=function(t,e,n){return π.contentElement("h3",t,e,n)},π.h4=function(t,e,n){return π.contentElement("h4",t,e,n)},π.h5=function(t,e,n){return π.contentElement("h5",t,e,n)},π.h6=function(t,e,n){return π.contentElement("h6",t,e,n)},π.iframe=function(t,e,n){return π.srcElement("iframe",t,e,n)},π.img=function(t,e,n){return π.srcElement("Img",t,e,n)},π.header=function(t,e,n){return π.contentElement("header",t,e,n)},π.nav=function(t,e,n){return π.contentElement("nav",t,e,n)},π.p=function(t,e,n){return π.contentElement("p",t,e,n)},π.section=function(t,e,n){return π.contentElement("section",t,e,n)},π.span=function(t,e,n){return π.contentElement("span",t,e,n)},π.ul=function(t,e,n){return π.contentElement("ul",t,e,n)},π.li=function(t,e,n){return π.contentElement("li",t,e,n)},HTMLElement.prototype.wrap=Node.prototype.wrap=function(t){var e=this;t.forEach||(t=[t]);var n=t[0].parentNode;n.insertBefore(e,t[0]),t.forEach(function(t){e.appendChild(t)})},HTMLElement.prototype.prepend=Node.prototype.prepend=function(t){this.insertBefore(t,this.childNodes[0])},HTMLElement.prototype.add=Node.prototype.add=function(t){if(Array.isArray(t)){var e=this;t.forEach(function(t){t&&e.appendChild(t)})}else t&&this.appendChild(t)},HTMLElement.prototype.classOnCondition=Node.prototype.classOnCondition=function(t,e){e?this.addClass(t):this.killClass(t)},HTMLElement.prototype.offset=Node.prototype.offset=function(){return this.getBoundingClientRect()},HTMLElement.prototype.πd=Node.prototype.πd=function(t){return this.getElementById(t)},HTMLElement.prototype.π1=Node.prototype.π1=function(t){return this.querySelector(t)},HTMLElement.prototype.π=Node.prototype.π=function(t){return this.querySelectorAll(t)},HTMLElement.prototype.hasClass=Node.prototype.hasClass=function(e){var n=t(this);return-1!==n.indexOf(e)},HTMLElement.prototype.addClass=Node.prototype.addClass=function(t){this.hasClass(t)||(this.className.length>0&&(this.className+=" "),this.className+=t)},HTMLElement.prototype.killClass=Node.prototype.killClass=function(e){if(this.hasClass(e)){var n=t(this),o=n.indexOf(e);o>-1&&(n.splice(o,1),this.className=n.join(" "))}},HTMLElement.prototype.toggleClass=Node.prototype.toggleClass=function(t){return this.hasClass(t)?this.killClass(t):this.addClass(t)},HTMLElement.prototype.siblings=Node.prototype.siblings=function(t){var e=this;return e.parentNode.π(":scope > "+(t||"*")).filter(function(t){return t!=e})},HTMLElement.prototype.css=Node.prototype.css=function(t,e){var n=this;return 0===arguments.length?window.getComputedStyle(this):void("object"==typeof t?Object.keys(t).forEach(function(e){n.style[e]=t[e]}):"string"==typeof t&&void 0!==e&&(n.style[t]=e))},HTMLElement.prototype.listen=Node.prototype.listen=function(t,e){this.addEventListener(e,t)},HTMLElement.prototype.index=Node.prototype.index=function(){return this.parentNode.childNodes.indexOf(this)},HTMLElement.prototype.empty=Node.prototype.empty=function(){this.innerHTML=""},HTMLElement.prototype.fill=Node.prototype.fill=function(t){var e=this;if(e.empty(),Array.isArray(t))return void t.forEach(function(t){t&&e.appendChild(t)});if(!t.nodeType){var n=document.createElement("text");n.innerHTML=t,t=n}this.appendChild(t)},HTMLElement.prototype.hide=Node.prototype.hide=function(){this.style.opacity=0,this.style.visibility="hidden",this.style.display="none"},HTMLElement.prototype.isHeirOfClass=Node.prototype.isHeirOfClass=function(t){var e=this.parentNode;if(e)for(;e!==π1("body");){if(e.hasClass(t))return!0;e=e.parentNode}return!1},HTMLElement.prototype.kill=Node.prototype.kill=function(){this.parentNode&&this.parentNode.removeChild(this)},HTMLElement.prototype.show=Node.prototype.show=function(t){this.style.opacity=1,this.style.visibility="visible",this.style.display=t||"block"},HTMLElement.prototype.parent=Node.prototype.parent=function(t){var e=this.parentNode;return t&&-1===π(t).indexOf(e)?e.parent(t):e},HTMLElement.prototype.addSwipes=function(t,e,n){var o,i,a,r,s=n?n.xThresh||30:30,l=n?n.yThresh||30:30,c=n?n.duration||1e3:1e3;this.addEventListener("touchstart",function(t){if(!r){var e=t.changedTouches[0];o=e.pageX,i=e.pageY,a=(new Date).getTime()}},!0),this.addEventListener("touchmove",function(n){if(!r){var u=n.changedTouches[0],d=u.pageX-o;Math.abs(u.pageY-i)>l||(new Date).getTime()-a>c||Math.abs(d)d?t():e(),setTimeout(function(){r=!1},300))}},!1)},Array.prototype.hasClass=NodeList.prototype.hasClass=function(t){var e=!1;return this.forEach(function(n){n.hasClass(t)&&(e=!0)}),e},Array.prototype.addClass=NodeList.prototype.addClass=function(t){this.forEach(function(e){e.addClass(t)})},Array.prototype.killClass=NodeList.prototype.killClass=function(t){this.forEach(function(e){e.killClass(t)})},Array.prototype.toggleClass=NodeList.prototype.toggleClass=function(t){this.forEach(function(e){e.toggleClass(t)})},Array.prototype.lastIdx=function(){return this.length-1},Array.prototype.lastObj=function(){return this[this.lastIdx()]};var o=Object.getOwnPropertyNames(Array.prototype);o.forEach(function(t){"length"!==t&&(NodeList.prototype[t]=Array.prototype[t])}),NodeList.prototype.css=function(t,e,n){this.forEach(function(o){o.css(t,e,n)})},NodeList.prototype.π=function(t){this.forEach(function(e){return e.π(t)})},NodeList.prototype.π1=function(t){this.forEach(function(e){return e.π1(t)})},NodeList.prototype.onclick=function(t){this.forEach(function(e){e.onclick=t})},String.prototype.camelCase=function(){var t=this.replace(/[^a-zA-Z\d\s_-]/g,"").toLowerCase(),e=t.split(" ");return e.forEach(function(t,n){if(0!==n){var o=t.charAt(0).toUpperCase();t=o+t.slice(1)}e[n]=t}),e.join("")},String.prototype.capitalCase=function(){var t=this.toLowerCase().split(" ");return t.forEach(function(e,n){var o=e.charAt(0).toUpperCase();t[n]=o+e.slice(1)}),t.join(" ")},Date.prototype.standardString=function(){var t=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],e=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],n=t[this.getDay()],o=e[this.getMonth()],i=this.getDate(),a=this.getFullYear(),r=this.getHours(),s=r>12?r-12:r||12,l=this.getMinutes(),c=l>9?l:"0"+l,u=12>r?"am":"pm",d=s+":"+c+" "+u,p=[n,o,i,a,d];return p.join(" ")},π.clean=function(t,e){window.removeEventListener(e||"DOMContentLoaded",t)},π.listen=function(t,e){window.addEventListener(e||"DOMContentLoaded",t)},π.highestZ=function(){var t=1e3;return n.a("*").forEach(function(e){var n=e.css().zIndex;"auto"!=n&&n>t&&(t=n+1)}),t},π.mods=[],π.setTriggers=function(t,e){t="pi-"+t+"-trigger",π("["+t+"]").forEach(function(n){n.onclick=function(){e.show(n.getAttribute(t))}})},π.listen(e)}(),function(){π.modalCloseButton=function(t){return π.button("pi-modal-close-button",null,null,t)}}(),function(){function t(t){t.target!==window&&π1("body").hasClass("overlay-on")&&t.target.hasClass("pi-modal-overlay")&&π.modalOverlay.hide()}function e(t){27==t.which&&π.modalOverlay.hide()}function n(){π(".pi-modal-overlay").forEach(π.modalOverlay.spawn),π.setTriggers("modal-overlay",π.modalOverlay)}π.modalOverlay={show:function(n,o){var i=πd(n);i.css({display:"block",zIndex:π.highestZ()}),π.listen(e,"keydown"),π.listen(t,"click"),setTimeout(function(){i.addClass("on"),π1("body").addClass("overlay-on"),o&&o()},50)},hide:function(t,n){t||(t=π1(".pi-modal-overlay.on")),t.killClass("on");var o=1e3*parseFloat(t.css().transitionDuration);π.clean(e,"keydown"),setTimeout(function(){t.css({display:"none"}),π1("body").killClass("overlay-on"),π1("iframe").src="",n&&n()},o)},spawn:function(t,e){t.add(π.modalCloseButton(function(){π.modalOverlay.hide(t)}))}},π.mods.push(n)}(),function(){function t(t){function e(){i(-1)}function n(){i(1)}function o(){i(null,this.index())}function i(e,n){if(!f){f=!0;var o=s.π1(".on");if(!e&&o){if(o.index()===n)return void(f=!1)}else e&&(n=o.index()+e,0>n?n=h.lastIdx():n>=h.length&&(n=0));r.cycle||(0==n?c.hide():c.show(),n==h.lastIdx()?u.hide():u.show()),r.pager&&(l.π(".yah").killClass("yah"),l.childNodes[n].addClass("yah"));var i={el:t,currentFrame:o,incomingFrame:h[n]};t.hasClass("pi-crossfader")?π.crossfader.changeFrame(i):t.hasClass("pi-rotator")?(i.pagerClicked=e?!1:!0,i.cycle=r.cycle,π.rotator.changeFrame(i)):(o&&o.killClass("on"),i.incomingFrame.addClass("on"));var a=1e3;if(o)try{a=1e3*o.css().transitionDuration.split(", ").reduce(function(t,e){return Math.max(parseFloat(t),parseFloat(e))})}catch(d){return void π.HAL.say(0,"π-rotator needs you to transition a css transform to make your items move.")}setTimeout(function(){f=!1},a)}}var a=t.dataset,r={modal:booleanAttributeValue(t,"data-modal",!1),prevNext:booleanAttributeValue(t,"data-prev-next",!0),pager:booleanAttributeValue(t,"data-pager",!1),cycle:booleanAttributeValue(t,"data-cycle",!0),autoplay:booleanAttributeValue(t,"data-autoplay",!1)},s=π.div("item-wrapper"),l=r.pager?π.div("pager"):null;if(t.π(":scope > .item").forEach(function(e){if(s.add(e),l){!t.π1(".pager");var n=π.button("pager-button",null,null,o);l.add(n)}}),t.fill([s,l]),r.prevNext){var c=π.button("prev-button"),u=π.button("next-button");t.add([c,u])}if(r.autoplay&&(r.delay=a.delay||4e3),c.onclick=e,u.onclick=n,t.hasClass("pi-rotator")){var d={el:t,options:r};π.rotator.spawn(d)}if(r.modal){var p=π.div("pi-modal-overlay");p.id=t.id,t.removeAttribute("id"),p.wrap(t),π.modalOverlay.spawn(p)}var f,h=s.childNodes;i(0,0)}function e(t){var e=πd(t);e.hasClass("pi-modal-overlay")&&π.modalOverlay.show(t)}function n(t){var e=πd(t);e.hasClass("pi-modal-overlay")&&π.modalOverlay.hide(t,function(){})}function o(){π(".pi-multi-frame-display").forEach(π.multiFrameDisplay.spawn),π.setTriggers("multi-frame-display",π.multiFrameDisplay)}π.multiFrameDisplay={show:e,hide:n,spawn:t},π.mods.push(o)}(),function(){function t(){π.clean(t),-1==navigator.userAgent.indexOf("Chrome")&&-1!=navigator.userAgent.indexOf("Safari")&&π1("body").add(π.contentElement("style",0,0,".pi-accordion .wrapper{transition: none}")),π(".pi-accordion").forEach(function(t){var n=π.div("container",null,t.innerHTML);t.fill(n),e(n)})}function e(t){t.π(":scope > .item").forEach(function(i){function a(t){var e=t.π1(".wrapper"),a=e.π1(".content").offset().height+"px";if(t.hasClass("on"))e.css({height:a}),t.killClass("on"),setTimeout(function(){e.css({height:0}),n=!1},o);else{i.addClass("on"),e.css({height:a});var r=1e3*parseFloat(e.css().transitionDuration);setTimeout(function(){e.css({height:""}),n=!1},r)}}var r=i.dataset.title,s=π.div("title",null,r),l=π.div("wrapper"),c=π.div("content",null,i.innerHTML);l.fill(c),i.fill([s,l]),l.css({height:0}),s.onclick=function(){if(!n){if(n=!0,t.dataset.single){var e=i.siblings().filter(function(t){return t.hasClass("on")});e.forEach(function(t){a(t)})}setTimeout(function(){a(i)},o)}};var u=c.π(":scope > .container");u.length>0&&u.forEach(e)})}var n=!1,o=25;π.mods.push(t)}(),function(){function t(){π(".pi-dialog").forEach(π.dialog.spawn),π.setTriggers("dialog",π.modalOverlay)}function e(t){function e(){t.π1(".pi-modal-close-button").click()}var n=π.div("content-box",0,t.innerHTML),o=π.div("dialog-box",0,n);t.fill(o),t.dataset.title&&o.prepend(π.div("title",0,t.dataset.title)),t.π(".buttons button").forEach(function(t){t.onclick=function(){var e=t.getAttribute("pi-dialog-action");e&&π.dialog.actions[e]()},t.hasAttribute("data-bypass")||t.listen(e,"click")}),booleanAttributeValue(t,"data-inline",!1)||(t.addClass("pi-modal-overlay"),π.modalOverlay.spawn(t))}π.dialog={show:π.modalOverlay.show,spawn:e,actions:{}},π.mods.push(t)}(),π.pushmenu=function(){function t(){π("[data-auto-burger]").forEach(function(t){var e=t.getAttribute("data-auto-burger"),n=πd(e)||π.div("pi-pushmenu",e),o=n.π1("ul")||π.ul();t.π("a[href], button").forEach(function(t){if(!booleanAttributeValue(t,"data-auto-burger-exclude",!1)){var e=t.cloneNode(!0);if(e.id="","BUTTON"==e.tagName){var n=π.srcElement("a");n.href="",n.innerHTML=e.innerHTML,n.onclick=e.onclick,e=n}o.add(π.li(0,0,e))}}),n.add(o),π1("body").add(n)}),π(".pi-pushmenu").forEach(function(t){o[t.id]=n(t)}),π.setTriggers("pushmenu",π.pushmenu)}function e(t){o[t].expose()}function n(t){function e(e){var n=e.target;n!=s&&n!=l&&(t.killClass("on"),setTimeout(function(){t.css({display:"none"}),o.killClass("overlay-on")},300))}function n(){o.addClass("overlay-on"),t.css({display:"block",zIndex:π.highestZ()}),setTimeout(function(){t.addClass("on")},10)}var o=(π1("html"),π1("body")),i=π.div("overlay"),a=π.div("content",null,t.π1("*")),r=t.getAttribute("data-side")||"right",s=π.div("sled");s.css(r,0);var l=π.div("top-bar");return l.fill(π.modalCloseButton(e)),s.fill([l,a]),i.fill(s),t.fill(i),s.onclick=function(t){t.stopPropagation()},i.onclick=e,π.listen(e,"resize"),{expose:n}}var o={};return π.mods.push(t),{show:e}}();var kub=function(){function t(){function o(){s.hasClass("open-nav")&&n()}π.clean(t),s=π1("html"),l=π1("body"),c=πd("mainNav"),u=πd("headlineWrapper"),p=πd("wishField"),r=π1("header").offset().height,d=πd("quickstartButton"),π1("body").add(π.contentElement("style",0,"menuStyles")),e(),π.listen(e,"resize"),π.listen(e,"scroll"),π.listen(i,"keydown"),p.listen(i,"keydown"),document.onunload=function(){π.clean(e,"resize"),π.clean(e,"scroll"),π.clean(i,"keydown"),p.clean(i,"keydown")},π.listen(o,"resize"),π(".dropdown").forEach(function(t){var e=t.π1(".readout");e.innerHTML=t.π1("a").innerHTML,e.onclick=function(){function e(o){t.hasClass("on")&&!n(o)&&(π.clean(e,"click"),t.killClass("on"))}function n(t){return t.target.isHeirOfClass("dropdown")}t.toggleClass("on"),π.listen(e,"click")}})}function e(){s.hasClass("open-nav")||(r=π1("header").offset().height);var t=window.pageYOffset,e=t/3;if(s.classOnCondition("flip-nav",t>0),l.css({backgroundPosition:"0 "+px(e)}),u){var n=u.offset().top+u.offset().height-r+t-30,o=n+d.offset().height;u.css({opacity:0===t?1:t>n?0:1-t/n}),d.css({opacity:n>t?1:t>o?0:1-(t-n)/(o-n)}),s.classOnCondition("y-enough",t>o)}}function n(){if(window.innerWidth<800)π.pushmenu.show("primary");else{var t=r;s.hasClass("open-nav")||(t=c.offset().height),π("header").css({height:px(t)})}s.toggleClass("open-nav")}function o(t){t.value="",t.blur()}function i(t){switch(t.which){case 13:t.currentTarget===p&&o(p);break;case 27:s.hasClass("open-nav")&&n()}}function a(){var t=πd("videoPlayer").π1("iframe");t.src=t.getAttribute("data-url"),π.modalOverlay.show("videoPlayer")}π.listen(t);var r,s,l,c,u,d,p;return{toggleMenu:n,showVideo:a}}(); \ No newline at end of file diff --git a/_site/v1.1/guides/index.html b/_site/v1.1/guides/index.html new file mode 100644 index 00000000000..6a607a3249b --- /dev/null +++ b/_site/v1.1/guides/index.html @@ -0,0 +1,208 @@ + + + + + + + + + Kubernetes - Doc test + + +
+
+ + + + +
+ + +
+

Doc test

+
Testing the doducmentation with cascading layouts
+ +
+ +
+
+
+ + + +
+
+ + + + + +
+
+
+
+ + + + + +
+
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+
+
+ + + + + +
+
+ +
+
+
+

This is a test of the documentation layout use

+ +

Testing version v1.1

+ +

Heading 2

+ +

Test of heading 2 is above

+ +

Heading 3

+ +

Test of heading 3 is above

+ +

Heading 4

+ +

Test of heading 4 is above

+ +

Code tests

+ +

Testing inline code and below is a code example:

+ +
console.log("Hello, world!");
+
+ +

Okeedoke.

+ +
+
+ + + + + + + + + diff --git a/_site/v1.1/index.html b/_site/v1.1/index.html new file mode 100644 index 00000000000..6a607a3249b --- /dev/null +++ b/_site/v1.1/index.html @@ -0,0 +1,208 @@ + + + + + + + + + Kubernetes - Doc test + + +
+
+ + + + +
+ + +
+

Doc test

+
Testing the doducmentation with cascading layouts
+ +
+ +
+
+
+ + + +
+
+ + + + + +
+
+
+
+ + + + + +
+
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+
+
+ + + + + +
+
+ +
+
+
+

This is a test of the documentation layout use

+ +

Testing version v1.1

+ +

Heading 2

+ +

Test of heading 2 is above

+ +

Heading 3

+ +

Test of heading 3 is above

+ +

Heading 4

+ +

Test of heading 4 is above

+ +

Code tests

+ +

Testing inline code and below is a code example:

+ +
console.log("Hello, world!");
+
+ +

Okeedoke.

+ +
+
+ + + + + + + + + diff --git a/_site/v1.1/reference/docker-cli-to-kubectl/index.html b/_site/v1.1/reference/docker-cli-to-kubectl/index.html new file mode 100644 index 00000000000..929021ea9ee --- /dev/null +++ b/_site/v1.1/reference/docker-cli-to-kubectl/index.html @@ -0,0 +1,473 @@ + + + + + + + + + Kubernetes - kubectl for docker users + + +
+
+ + + + +
+ + +
+

kubectl for docker users

+
+ +
+ +
+
+
+ + +
+
+ + + +
+
+
+
+ + + + +
+
+ +
+
+ + + + + + + +
+
+ + + + +
+
+ + + + + + + + + + + + + + + + + + + + + +
+
+
+
+ + + + + + + +
+
+ +
+
+
+

In this doc, we introduce the Kubernetes command line for interacting with the api to docker-cli users. The tool, kubectl, is designed to be familiar to docker-cli users but there are a few necessary differences. Each section of this doc highlights a docker subcommand explains the kubectl equivalent.

+ +

Table of Contents

+ +

docker run

+ +

How do I run an nginx container and expose it to the world? Checkout kubectl run.

+ +

With docker:

+ +
+
$ docker run -d --restart=always -e DOMAIN=cluster --name nginx-app -p 80:80 nginx
+a9ec34d9878748d2f33dc20cb25c714ff21da8d40558b45bfaec9955859075d0
+$ docker ps
+CONTAINER ID        IMAGE               COMMAND                CREATED             STATUS              PORTS                         NAMES
+a9ec34d98787        nginx               "nginx -g 'daemon of   2 seconds ago       Up 2 seconds        0.0.0.0:80->80/tcp, 443/tcp   nginx-app
+
+
+ +

With kubectl:

+ +
+
# start the pod running nginx
+$ kubectl run --image=nginx nginx-app --port=80 --env="DOMAIN=cluster"
+replicationcontroller "nginx-app" created
+# expose a port through with a service
+$ kubectl expose rc nginx-app --port=80 --name=nginx-http
+
+
+ +

With kubectl, we create a replication controller which will make sure that N pods are running nginx (where N is the number of replicas stated in the spec, which defaults to 1). We also create a service with a selector that matches the replication controller’s selector. See the Quick start for more information.

+ +

By default images are run in the background, similar to docker run -d ..., if you want to run things in the foreground, use:

+ +
+
kubectl run [-i] [--tty] --attach <name> --image=<image>
+
+
+ +

Unlike docker run ..., if --attach is specified, we attach to stdin, stdout and stderr, there is no ability to control which streams are attached (docker -a ...).

+ +

Because we start a replication controller for your container, it will be restarted if you terminate the attached process (e.g. ctrl-c), this is different than docker run -it. +To destroy the replication controller (and it’s pods) you need to run kubectl delete rc <name>

+ +

docker ps

+ +

How do I list what is currently running? Checkout kubectl get.

+ +

With docker:

+ +
+
$ docker ps
+CONTAINER ID        IMAGE               COMMAND                CREATED             STATUS              PORTS                         NAMES
+a9ec34d98787        nginx               "nginx -g 'daemon of   About an hour ago   Up About an hour    0.0.0.0:80->80/tcp, 443/tcp   nginx-app
+
+
+ +

With kubectl:

+ +
+
$ kubectl get po
+NAME              READY     STATUS    RESTARTS   AGE
+nginx-app-5jyvm   1/1       Running   0          1h
+
+
+ +

docker attach

+ +

How do I attach to a process that is already running in a container? Checkout kubectl attach

+ +

With docker:

+ +
+
$ docker ps
+CONTAINER ID        IMAGE               COMMAND                CREATED             STATUS              PORTS                         NAMES
+a9ec34d98787        nginx               "nginx -g 'daemon of   8 minutes ago       Up 8 minutes        0.0.0.0:80->80/tcp, 443/tcp   nginx-app
+$ docker attach -it a9ec34d98787
+...
+
+
+ +

With kubectl:

+ +
+
$ kubectl get pods
+NAME              READY     STATUS    RESTARTS   AGE
+nginx-app-5jyvm   1/1       Running   0          10m
+$ kubectl attach -it nginx-app-5jyvm
+...
+
+
+ +

docker exec

+ +

How do I execute a command in a container? Checkout kubectl exec.

+ +

With docker:

+ +
+
$ docker ps
+CONTAINER ID        IMAGE               COMMAND                CREATED             STATUS              PORTS                         NAMES
+a9ec34d98787        nginx               "nginx -g 'daemon of   8 minutes ago       Up 8 minutes        0.0.0.0:80->80/tcp, 443/tcp   nginx-app
+$ docker exec a9ec34d98787 cat /etc/hostname
+a9ec34d98787
+
+
+ +

With kubectl:

+ +
+
$ kubectl get po
+NAME              READY     STATUS    RESTARTS   AGE
+nginx-app-5jyvm   1/1       Running   0          10m
+$ kubectl exec nginx-app-5jyvm -- cat /etc/hostname
+nginx-app-5jyvm
+
+
+ +

What about interactive commands?

+ +

With docker:

+ +
+
$ docker exec -ti a9ec34d98787 /bin/sh
+
+# exit
+
+
+ +

With kubectl:

+ +
+
$ kubectl exec -ti nginx-app-5jyvm -- /bin/sh      
+
+# exit
+
+
+ +

For more information see Getting into containers.

+ +

docker logs

+ +

How do I follow stdout/stderr of a running process? Checkout kubectl logs.

+ +

With docker:

+ +
+
$ docker logs -f a9e
+192.168.9.1 - - [14/Jul/2015:01:04:02 +0000] "GET / HTTP/1.1" 200 612 "-" "curl/7.35.0" "-"
+192.168.9.1 - - [14/Jul/2015:01:04:03 +0000] "GET / HTTP/1.1" 200 612 "-" "curl/7.35.0" "-"
+
+
+ +

With kubectl:

+ +
+
$ kubectl logs -f nginx-app-zibvs
+10.240.63.110 - - [14/Jul/2015:01:09:01 +0000] "GET / HTTP/1.1" 200 612 "-" "curl/7.26.0" "-"
+10.240.63.110 - - [14/Jul/2015:01:09:02 +0000] "GET / HTTP/1.1" 200 612 "-" "curl/7.26.0" "-"
+
+
+ +

Now’s a good time to mention slight difference between pods and containers; by default pods will not terminate if their processes exit. Instead it will restart the process. This is similar to the docker run option --restart=always with one major difference. In docker, the output for each invocation of the process is concatenated but for Kubernetes, each invocation is separate. To see the output from a previous run in Kubernetes, do this:

+ +
+
$ kubectl logs --previous nginx-app-zibvs
+10.240.63.110 - - [14/Jul/2015:01:09:01 +0000] "GET / HTTP/1.1" 200 612 "-" "curl/7.26.0" "-"
+10.240.63.110 - - [14/Jul/2015:01:09:02 +0000] "GET / HTTP/1.1" 200 612 "-" "curl/7.26.0" "-"
+
+
+ +

See Logging for more information.

+ +

docker stop and docker rm

+ +

How do I stop and delete a running process? Checkout kubectl delete.

+ +

With docker

+ +
+
$ docker ps
+CONTAINER ID        IMAGE               COMMAND                CREATED             STATUS              PORTS                         NAMES
+a9ec34d98787        nginx               "nginx -g 'daemon of   22 hours ago        Up 22 hours         0.0.0.0:80->80/tcp, 443/tcp   nginx-app
+$ docker stop a9ec34d98787
+a9ec34d98787
+$ docker rm a9ec34d98787
+a9ec34d98787
+
+
+ +

With kubectl:

+ +
+
$ kubectl get rc nginx-app
+CONTROLLER   CONTAINER(S)   IMAGE(S)   SELECTOR        REPLICAS
+nginx-app    nginx-app      nginx      run=nginx-app   1
+$ kubectl get po
+NAME              READY     STATUS    RESTARTS   AGE
+nginx-app-aualv   1/1       Running   0          16s
+$ kubectl delete rc nginx-app
+NAME              READY     STATUS    RESTARTS   AGE
+nginx-app-aualv   1/1       Running   0          16s
+$ kubectl get po
+NAME      READY     STATUS    RESTARTS   AGE
+
+
+ +

Notice that we don’t delete the pod directly. With kubectl we want to delete the replication controller that owns the pod. If we delete the pod directly, the replication controller will recreate the pod.

+ +

docker login

+ +

There is no direct analog of docker login in kubectl. If you are interested in using Kubernetes with a private registry, see Using a Private Registry.

+ +

docker version

+ +

How do I get the version of my client and server? Checkout kubectl version.

+ +

With docker:

+ +
+
$ docker version
+Client version: 1.7.0
+Client API version: 1.19
+Go version (client): go1.4.2
+Git commit (client): 0baf609
+OS/Arch (client): linux/amd64
+Server version: 1.7.0
+Server API version: 1.19
+Go version (server): go1.4.2
+Git commit (server): 0baf609
+OS/Arch (server): linux/amd64
+
+
+ +

With kubectl:

+ +
+
$ kubectl version
+Client Version: version.Info{Major:"0", Minor:"20.1", GitVersion:"v0.20.1", GitCommit:"", GitTreeState:"not a git tree"}
+Server Version: version.Info{Major:"0", Minor:"21+", GitVersion:"v0.21.1-411-g32699e873ae1ca-dirty", GitCommit:"32699e873ae1caa01812e41de7eab28df4358ee4", GitTreeState:"dirty"}
+
+
+ +

docker info

+ +

How do I get miscellaneous info about my environment and configuration? Checkout kubectl cluster-info.

+ +

With docker:

+ +
+
$ docker info
+Containers: 40
+Images: 168
+Storage Driver: aufs
+ Root Dir: /usr/local/google/docker/aufs
+ Backing Filesystem: extfs
+ Dirs: 248
+ Dirperm1 Supported: false
+Execution Driver: native-0.2
+Logging Driver: json-file
+Kernel Version: 3.13.0-53-generic
+Operating System: Ubuntu 14.04.2 LTS
+CPUs: 12
+Total Memory: 31.32 GiB
+Name: k8s-is-fun.mtv.corp.google.com
+ID: ADUV:GCYR:B3VJ:HMPO:LNPQ:KD5S:YKFQ:76VN:IANZ:7TFV:ZBF4:BYJO
+WARNING: No swap limit support
+
+
+ +

With kubectl:

+ +
+
$ kubectl cluster-info
+Kubernetes master is running at https://108.59.85.141
+KubeDNS is running at https://108.59.85.141/api/v1/proxy/namespaces/kube-system/services/kube-dns
+KubeUI is running at https://108.59.85.141/api/v1/proxy/namespaces/kube-system/services/kube-ui
+Grafana is running at https://108.59.85.141/api/v1/proxy/namespaces/kube-system/services/monitoring-grafana
+Heapster is running at https://108.59.85.141/api/v1/proxy/namespaces/kube-system/services/monitoring-heapster
+InfluxDB is running at https://108.59.85.141/api/v1/proxy/namespaces/kube-system/services/monitoring-influxdb
+
+
+ + +

Analytics +

+ + +
+
+ + + + + + + + + diff --git a/_site/v1.1/reference/index.html b/_site/v1.1/reference/index.html new file mode 100644 index 00000000000..a30255c3818 --- /dev/null +++ b/_site/v1.1/reference/index.html @@ -0,0 +1,210 @@ + + + + + + + + + Kubernetes - Doc test + + +
+
+ + + + +
+ + +
+

Doc test

+
Testing the doducmentation with cascading layouts
+ +
+ +
+
+
+ + +
+
+ + + +
+
+
+
+ + + + +
+
+ +
+
+ + + + + + + +
+
+ + + + +
+
+ + + + + + + + + + + + + + + + + + + + + +
+
+
+
+ + + + + + + +
+
+ +
+
+
+

This is a test of the documentation layout use

+ +

Testing version v1.1

+ +

Heading 2

+ +

Test of heading 2 is above

+ +

Heading 3

+ +

Test of heading 3 is above

+ +

Heading 4

+ +

Test of heading 4 is above

+ +

Code tests

+ +

Testing inline code and below is a code example:

+ +
console.log("Hello, world!");
+
+ +

Okeedoke.

+ +
+
+ + + + + + + + + diff --git a/_site/v1.1/samples/index.html b/_site/v1.1/samples/index.html new file mode 100644 index 00000000000..9e89291ebf9 --- /dev/null +++ b/_site/v1.1/samples/index.html @@ -0,0 +1,177 @@ + + + + + + + + + Kubernetes - Doc test + + +
+
+ + + + +
+ + +
+

Doc test

+
Testing the doducmentation with cascading layouts
+ +
+ +
+
+
+ + +
+
+ + + + + + + + + + + + + +
+
+
+
+ + + + + +
+
+
+
+ + + + +
+
+ +
+
+
+

This is a test of the documentation layout use

+ +

Testing version v1.1

+ +

Heading 2

+ +

Test of heading 2 is above

+ +

Heading 3

+ +

Test of heading 3 is above

+ +

Heading 4

+ +

Test of heading 4 is above

+ +

Code tests

+ +

Testing inline code and below is a code example:

+ +
console.log("Hello, world!");
+
+ +

Okeedoke.

+ +
+
+ + + + + + + + + diff --git a/_site/v1.1/support/index.html b/_site/v1.1/support/index.html new file mode 100644 index 00000000000..10484b6f78a --- /dev/null +++ b/_site/v1.1/support/index.html @@ -0,0 +1,175 @@ + + + + + + + + + Kubernetes - Doc test + + +
+
+ + + + +
+ + +
+

Doc test

+
Testing the doducmentation with cascading layouts
+ +
+ +
+
+
+ + +
+
+ + + + + + + + + + +
+
+
+
+ + + + +
+
+
+
+ + + + + + +
+
+ +
+
+
+

This is a test of the documentation layout use

+ +

Testing version v1.1

+ +

Heading 2

+ +

Test of heading 2 is above

+ +

Heading 3

+ +

Test of heading 3 is above

+ +

Heading 4

+ +

Test of heading 4 is above

+ +

Code tests

+ +

Testing inline code and below is a code example:

+ +
console.log("Hello, world!");
+
+ +

Okeedoke.

+ +
+
+ + + + + + + + + diff --git a/v1.1/reference/docker-cli-to-kubectl.md b/v1.1/reference/docker-cli-to-kubectl.md new file mode 100644 index 00000000000..5868a5c1e94 --- /dev/null +++ b/v1.1/reference/docker-cli-to-kubectl.md @@ -0,0 +1,342 @@ +--- +title: "kubectl for docker users" +--- + +In this doc, we introduce the Kubernetes command line for interacting with the api to docker-cli users. The tool, kubectl, is designed to be familiar to docker-cli users but there are a few necessary differences. Each section of this doc highlights a docker subcommand explains the kubectl equivalent. + +**Table of Contents** + + +#### docker run + +How do I run an nginx container and expose it to the world? Checkout [kubectl run](kubectl/kubectl_run.html). + +With docker: + +{% highlight console %} +{% raw %} +$ docker run -d --restart=always -e DOMAIN=cluster --name nginx-app -p 80:80 nginx +a9ec34d9878748d2f33dc20cb25c714ff21da8d40558b45bfaec9955859075d0 +$ docker ps +CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES +a9ec34d98787 nginx "nginx -g 'daemon of 2 seconds ago Up 2 seconds 0.0.0.0:80->80/tcp, 443/tcp nginx-app +{% endraw %} +{% endhighlight %} + +With kubectl: + +{% highlight console %} +{% raw %} +# start the pod running nginx +$ kubectl run --image=nginx nginx-app --port=80 --env="DOMAIN=cluster" +replicationcontroller "nginx-app" created +# expose a port through with a service +$ kubectl expose rc nginx-app --port=80 --name=nginx-http +{% endraw %} +{% endhighlight %} + +With kubectl, we create a [replication controller](replication-controller.html) which will make sure that N pods are running nginx (where N is the number of replicas stated in the spec, which defaults to 1). We also create a [service](services.html) with a selector that matches the replication controller's selector. See the [Quick start](quick-start.html) for more information. + +By default images are run in the background, similar to `docker run -d ...`, if you want to run things in the foreground, use: + +{% highlight console %} +{% raw %} +kubectl run [-i] [--tty] --attach --image= +{% endraw %} +{% endhighlight %} + +Unlike `docker run ...`, if `--attach` is specified, we attach to `stdin`, `stdout` and `stderr`, there is no ability to control which streams are attached (`docker -a ...`). + +Because we start a replication controller for your container, it will be restarted if you terminate the attached process (e.g. `ctrl-c`), this is different than `docker run -it`. +To destroy the replication controller (and it's pods) you need to run `kubectl delete rc ` + +#### docker ps + +How do I list what is currently running? Checkout [kubectl get](kubectl/kubectl_get.html). + +With docker: + +{% highlight console %} +{% raw %} +$ docker ps +CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES +a9ec34d98787 nginx "nginx -g 'daemon of About an hour ago Up About an hour 0.0.0.0:80->80/tcp, 443/tcp nginx-app +{% endraw %} +{% endhighlight %} + +With kubectl: + +{% highlight console %} +{% raw %} +$ kubectl get po +NAME READY STATUS RESTARTS AGE +nginx-app-5jyvm 1/1 Running 0 1h +{% endraw %} +{% endhighlight %} + +#### docker attach + +How do I attach to a process that is already running in a container? Checkout [kubectl attach](kubectl/kubectl_attach.html) + +With docker: + +{% highlight console %} +{% raw %} +$ docker ps +CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES +a9ec34d98787 nginx "nginx -g 'daemon of 8 minutes ago Up 8 minutes 0.0.0.0:80->80/tcp, 443/tcp nginx-app +$ docker attach -it a9ec34d98787 +... +{% endraw %} +{% endhighlight %} + +With kubectl: + +{% highlight console %} +{% raw %} +$ kubectl get pods +NAME READY STATUS RESTARTS AGE +nginx-app-5jyvm 1/1 Running 0 10m +$ kubectl attach -it nginx-app-5jyvm +... + +{% endraw %} +{% endhighlight %} + +#### docker exec + +How do I execute a command in a container? Checkout [kubectl exec](kubectl/kubectl_exec.html). + +With docker: + +{% highlight console %} +{% raw %} + +$ docker ps +CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES +a9ec34d98787 nginx "nginx -g 'daemon of 8 minutes ago Up 8 minutes 0.0.0.0:80->80/tcp, 443/tcp nginx-app +$ docker exec a9ec34d98787 cat /etc/hostname +a9ec34d98787 + +{% endraw %} +{% endhighlight %} + +With kubectl: + +{% highlight console %} +{% raw %} + +$ kubectl get po +NAME READY STATUS RESTARTS AGE +nginx-app-5jyvm 1/1 Running 0 10m +$ kubectl exec nginx-app-5jyvm -- cat /etc/hostname +nginx-app-5jyvm + +{% endraw %} +{% endhighlight %} + +What about interactive commands? + + +With docker: + +{% highlight console %} +{% raw %} + +$ docker exec -ti a9ec34d98787 /bin/sh + +# exit + +{% endraw %} +{% endhighlight %} + +With kubectl: + +{% highlight console %} +{% raw %} + +$ kubectl exec -ti nginx-app-5jyvm -- /bin/sh + +# exit + +{% endraw %} +{% endhighlight %} + +For more information see [Getting into containers](getting-into-containers.html). + +#### docker logs + +How do I follow stdout/stderr of a running process? Checkout [kubectl logs](kubectl/kubectl_logs.html). + + +With docker: + +{% highlight console %} +{% raw %} + +$ docker logs -f a9e +192.168.9.1 - - [14/Jul/2015:01:04:02 +0000] "GET / HTTP/1.1" 200 612 "-" "curl/7.35.0" "-" +192.168.9.1 - - [14/Jul/2015:01:04:03 +0000] "GET / HTTP/1.1" 200 612 "-" "curl/7.35.0" "-" + +{% endraw %} +{% endhighlight %} + +With kubectl: + +{% highlight console %} +{% raw %} + +$ kubectl logs -f nginx-app-zibvs +10.240.63.110 - - [14/Jul/2015:01:09:01 +0000] "GET / HTTP/1.1" 200 612 "-" "curl/7.26.0" "-" +10.240.63.110 - - [14/Jul/2015:01:09:02 +0000] "GET / HTTP/1.1" 200 612 "-" "curl/7.26.0" "-" + +{% endraw %} +{% endhighlight %} + +Now's a good time to mention slight difference between pods and containers; by default pods will not terminate if their processes exit. Instead it will restart the process. This is similar to the docker run option `--restart=always` with one major difference. In docker, the output for each invocation of the process is concatenated but for Kubernetes, each invocation is separate. To see the output from a previous run in Kubernetes, do this: + +{% highlight console %} +{% raw %} + +$ kubectl logs --previous nginx-app-zibvs +10.240.63.110 - - [14/Jul/2015:01:09:01 +0000] "GET / HTTP/1.1" 200 612 "-" "curl/7.26.0" "-" +10.240.63.110 - - [14/Jul/2015:01:09:02 +0000] "GET / HTTP/1.1" 200 612 "-" "curl/7.26.0" "-" + +{% endraw %} +{% endhighlight %} + +See [Logging](logging.html) for more information. + +#### docker stop and docker rm + +How do I stop and delete a running process? Checkout [kubectl delete](kubectl/kubectl_delete.html). + +With docker + +{% highlight console %} +{% raw %} + +$ docker ps +CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES +a9ec34d98787 nginx "nginx -g 'daemon of 22 hours ago Up 22 hours 0.0.0.0:80->80/tcp, 443/tcp nginx-app +$ docker stop a9ec34d98787 +a9ec34d98787 +$ docker rm a9ec34d98787 +a9ec34d98787 + +{% endraw %} +{% endhighlight %} + +With kubectl: + +{% highlight console %} +{% raw %} + +$ kubectl get rc nginx-app +CONTROLLER CONTAINER(S) IMAGE(S) SELECTOR REPLICAS +nginx-app nginx-app nginx run=nginx-app 1 +$ kubectl get po +NAME READY STATUS RESTARTS AGE +nginx-app-aualv 1/1 Running 0 16s +$ kubectl delete rc nginx-app +NAME READY STATUS RESTARTS AGE +nginx-app-aualv 1/1 Running 0 16s +$ kubectl get po +NAME READY STATUS RESTARTS AGE + +{% endraw %} +{% endhighlight %} + +Notice that we don't delete the pod directly. With kubectl we want to delete the replication controller that owns the pod. If we delete the pod directly, the replication controller will recreate the pod. + +#### docker login + +There is no direct analog of `docker login` in kubectl. If you are interested in using Kubernetes with a private registry, see [Using a Private Registry](images.html#using-a-private-registry). + +#### docker version + +How do I get the version of my client and server? Checkout [kubectl version](kubectl/kubectl_version.html). + +With docker: + +{% highlight console %} +{% raw %} + +$ docker version +Client version: 1.7.0 +Client API version: 1.19 +Go version (client): go1.4.2 +Git commit (client): 0baf609 +OS/Arch (client): linux/amd64 +Server version: 1.7.0 +Server API version: 1.19 +Go version (server): go1.4.2 +Git commit (server): 0baf609 +OS/Arch (server): linux/amd64 + +{% endraw %} +{% endhighlight %} + +With kubectl: + +{% highlight console %} +{% raw %} + +$ kubectl version +Client Version: version.Info{Major:"0", Minor:"20.1", GitVersion:"v0.20.1", GitCommit:"", GitTreeState:"not a git tree"} +Server Version: version.Info{Major:"0", Minor:"21+", GitVersion:"v0.21.1-411-g32699e873ae1ca-dirty", GitCommit:"32699e873ae1caa01812e41de7eab28df4358ee4", GitTreeState:"dirty"} + +{% endraw %} +{% endhighlight %} + +#### docker info + +How do I get miscellaneous info about my environment and configuration? Checkout [kubectl cluster-info](kubectl/kubectl_cluster-info.html). + +With docker: + +{% highlight console %} +{% raw %} + +$ docker info +Containers: 40 +Images: 168 +Storage Driver: aufs + Root Dir: /usr/local/google/docker/aufs + Backing Filesystem: extfs + Dirs: 248 + Dirperm1 Supported: false +Execution Driver: native-0.2 +Logging Driver: json-file +Kernel Version: 3.13.0-53-generic +Operating System: Ubuntu 14.04.2 LTS +CPUs: 12 +Total Memory: 31.32 GiB +Name: k8s-is-fun.mtv.corp.google.com +ID: ADUV:GCYR:B3VJ:HMPO:LNPQ:KD5S:YKFQ:76VN:IANZ:7TFV:ZBF4:BYJO +WARNING: No swap limit support + +{% endraw %} +{% endhighlight %} + +With kubectl: + +{% highlight console %} +{% raw %} + +$ kubectl cluster-info +Kubernetes master is running at https://108.59.85.141 +KubeDNS is running at https://108.59.85.141/api/v1/proxy/namespaces/kube-system/services/kube-dns +KubeUI is running at https://108.59.85.141/api/v1/proxy/namespaces/kube-system/services/kube-ui +Grafana is running at https://108.59.85.141/api/v1/proxy/namespaces/kube-system/services/monitoring-grafana +Heapster is running at https://108.59.85.141/api/v1/proxy/namespaces/kube-system/services/monitoring-heapster +InfluxDB is running at https://108.59.85.141/api/v1/proxy/namespaces/kube-system/services/monitoring-influxdb + +{% endraw %} +{% endhighlight %} + + + +[![Analytics](https://kubernetes-site.appspot.com/UA-36037335-10/GitHub/docs/user-guide/docker-cli-to-kubectl.md?pixel)]() + +