在docker中部署k8s的方法
K8s
k8s是一個cluster集群,在cluster集群中有多個Namespace,一個namespace下又有多個pods,一個pod下有多個container。
這篇文章帶你從頭在docker中部署k8s。
docker下載
docker安裝 docker: https://docs.docker.com/docker-for-mac/install/
在docker中使用k8s: https://docs.docker.com/desktop/kubernetes/
在docker設(shè)置中,點選如下圖的兩個。
k8s 相關(guān)命令
在這一小節(jié)會簡單介紹通過命令行控制k8s的相關(guān)shell命令。
獲取相關(guān)的namespace信息
kubectl get namespace
獲取default下的相關(guān)的pod信息,如果沒有–namespace參數(shù)則獲得所有的namespace信息
Kebectl get pod --namespace=default
獲取pod的shell
Kubectl exec -it pod bash
通過網(wǎng)頁API顯示
如何在網(wǎng)頁中直觀的顯示k8s集群的信息。
首選配置代理
Kubectl proxy
這時打開網(wǎng)頁
http://localhost:8001/api/v1/namespaces/kubernetes-dashboard/services/https:kubernetes-dashboard:/proxy/#/login
提示需要輸入token,輸入命令,并將得到的token粘貼到token中。
kubectl -n kube-system describe secret $(kubectl -n kube-system get secret | grep admin-user | awk '{print $1}')
此時,進入到k8s的網(wǎng)頁中,
點開相應(yīng)的pods,可以選擇namespace。
點擊pod后面的三個點,點擊執(zhí)行,便可進入到當(dāng)前pod的shell中。
此刻,點開你會發(fā)現(xiàn)并不能運行相關(guān)的命令。
需要配置相關(guān)的yaml文件。
yaml文件格式
在這一小節(jié)給出yaml的文件格式。
apiVersion: v1 kind: Pod metadata: name: pod1 labels: app: web namespace: yournamespace spec: containers: - name: front-end image: ngnix ports: - containerPort: 80 - name: flaskapp-demo image: jcdemo/flaskapp ports: - containerPort: 5000
這代表在yournamespace的pod1下建立兩個container,一個名為front-end,鏡像為ngnix,一個名為flaskapp-demo,鏡像為jcdemo/flaskapp。
再給出一個yaml的例子
apiVersion: v1 kind: Pod metadata: name: pod3 labels: app: web namespace: yournamespace spec: containers: - name: pod-redis image: docker.io/redis ports: - containerPort: 5000
這代表在yournamespace的pod3下建立一個名為pod-redis的container,鏡像為docker.io/redis.
到此這篇關(guān)于在docker中部署k8s的方法的文章就介紹到這了,更多相關(guān)docker部署k8s內(nèi)容請搜索本站以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持本站!
版權(quán)聲明:本站文章來源標(biāo)注為YINGSOO的內(nèi)容版權(quán)均為本站所有,歡迎引用、轉(zhuǎn)載,請保持原文完整并注明來源及原文鏈接。禁止復(fù)制或仿造本網(wǎng)站,禁止在非www.sddonglingsh.com所屬的服務(wù)器上建立鏡像,否則將依法追究法律責(zé)任。本站部分內(nèi)容來源于網(wǎng)友推薦、互聯(lián)網(wǎng)收集整理而來,僅供學(xué)習(xí)參考,不代表本站立場,如有內(nèi)容涉嫌侵權(quán),請聯(lián)系alex-e#qq.com處理。