一、声明:
用到的k8s资源:
1.pod
2.confgMap
二、拉取kodcloud、mySql镜像sudo docker pull kodcloud/kodbox
sudo docker pull mysql:8
参考连接:
https://hub.docker.com/r/kodcloud/kodbox
https://hub.docker.com/_/mysql
三、编写yaml文件cat 04-pod-rc-kodcloud.yaml
apiVersion: v1
##pod资源##
kind: Pod
metadata:
name: kodcloud
spec:
##调度到某个节点##
nodeName: worker233
##直接使用宿主机网卡##
hostNetwork: true
containers:
- name: kodcloud
##在自己的私有仓库中拉取镜像##
image: ......../kodcloud:latest
##基于环境变量引入cm资源##
env:
##数据库的地址##
- name: MYSQL_SERVER
valueFrom:
fieldRef:
fieldPath: status.hostIP
##数据库的用户##
- name: MYSQL_USER
valueFrom:
configMapKeyRef:
name: kodcloud-cm
key: user
##数据库的密码##
- name: MYSQL_PASSWORD
valueFrom:
configMapKeyRef:
name: kodcloud-cm
key: passwd
##数据库的名称
- name: MYSQL_DATABASE
valueFrom:
configMapKeyRef:
name: kodcloud-cm
key: database
stdin: true
- name: mysql-kodcloud
##在自己的私有仓库中拉取镜像##
image: .......mysql:8
env:
- name: MYSQL_DATABASE
value: "kodcloud"
- name: MYSQL_ALLOW_EMPTY_PASSWORD
value: "yes"
- name: MYSQL_USER
value: "admin"
- name: MYSQL_PASSWORD
value: "1"
args:
- --default_authentication_plugin=mysql_native_password
- --character-set-server=utf8mb4
- --collation-server=utf8mb4_unicode_ci
---
##定义cm资源##
apiVersion: v1
kind: ConfigMap
metadata:
name: kodcloud-cm
data:
database: kodcloud
user: admin
passwd: "1"
四、开始启动容器[root@master231 homework]#sudo kubectl apply -f 04-pod-rc-kodcloud.yaml
pod/kodcloud created
configmap/kodcloud-cm created
五、查看是否成功运行
[root@master231 homework]#sudo kubectl get po,cm -owide
NAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE READINESS GATES
pod/kodcloud 2/2 Running 0 80s 10.0.0.233 worker233 <none> <none>
NAME DATA AGE
configmap/kodcloud-cm 3 80s
configmap/kube-root-ca.crt 1 50m
六、浏览器访问测试是否部署成功,能否直接登录
http://10.0.0.233/
七、如果出现这样的页面就成功部署kodcloud到k8s了
还不快抢沙发