在K8s平台摆设个人博客

打印 上一主题 下一主题

主题 852|帖子 852|积分 2558

实行步调

  1. kubectl create secret generic mysql-pass --from-literal=password=YOUR_PASSWORD
复制代码
  把mysql.tar.gz和wordpress.tar.gz上传到K8s工作节点,手动解压即可:
通过网盘分享的文件:wordpress.tar.gz
链接: https://pan.baidu.com/s/1nISFKNIyANvcuBAWE9MAMQ?pwd=u77k 提取码: u77k
通过网盘分享的文件:mysql.tar.gz
链接: https://pan.baidu.com/s/1NVw3fULvQ3NOAAKtjU7nOw?pwd=8r2v 提取码: 8r2v
  1. docker load -i mysql.tar.gz
  2. docker load -i wordpress.tar.gz
  3. ctr –n=k8s.io images import mysql.tar.gz
  4. ctr –n=k8s.io images import wordpress.tar.gz
复制代码
  摆设服务
  1. cat mysql.yaml
复制代码
  1. apiVersion: v1
  2. kind: Service
  3. metadata:
  4.   name: wordpress-mysql
  5.   labels:
  6.     app: wordpress
  7. spec:
  8.   ports:
  9.     - port: 3306
  10.   selector:
  11.     app: wordpress
  12.     tier: mysql
  13.   clusterIP: None
  14. ---
  15. apiVersion: apps/v1 # for versions before 1.9.0 use apps/v1beta2
  16. kind: Deployment
  17. metadata:
  18.   name: wordpress-mysql
  19.   labels:
  20.     app: wordpress
  21. spec:
  22.   replicas: 1
  23.   selector:
  24.     matchLabels:
  25.       app: wordpress
  26.       tier: mysql
  27.   strategy:
  28.     type: Recreate
  29.   template:
  30.     metadata:
  31.       labels:
  32.         app: wordpress
  33.         tier: mysql
  34.     spec:
  35.       containers:
  36.       - image: mysql:5.6
  37.         name: mysql
  38.         env:
  39.         - name: MYSQL_ROOT_PASSWORD
  40.           valueFrom:
  41.             secretKeyRef:
  42.               name: mysql-pass
  43.               key: password
  44.         ports:
  45.         - containerPort: 3306
  46.           name: mysql
  47.         volumeMounts:
  48.         - name: mysql-persistent-storage
  49.           mountPath: /var/lib/mysql
  50.       volumes:
  51.       - name: mysql-persistent-storage
  52.         hostPath:
  53.           path: /datawordpress
  54.           type: DirectoryOrCreate
复制代码
  1. cat wordpress.yaml
复制代码
  1. apiVersion: v1
  2. kind: Service
  3. metadata:
  4.   name: wordpress
  5.   labels:
  6.     app: wordpress
  7. spec:
  8.   type: NodePort
  9.   ports:
  10.     - port: 80
  11.       nodePort: 30090
  12.   selector:
  13.     app: wordpress
  14.     tier: frontend
  15. ---
  16. apiVersion: apps/v1 # for versions before 1.9.0 use apps/v1beta2
  17. kind: Deployment
  18. metadata:
  19.   name: wordpress
  20.   labels:
  21.     app: wordpress
  22. spec:
  23.   selector:
  24.     matchLabels:
  25.       app: wordpress
  26.       tier: frontend
  27.   strategy:
  28.     type: Recreate
  29.   template:
  30.     metadata:
  31.       labels:
  32.         app: wordpress
  33.         tier: frontend
  34.     spec:
  35.       containers:
  36.       - image: wordpress:4.8-apache
  37.         name: wordpress
  38.         env:
  39.         - name: WORDPRESS_DB_HOST
  40.           value: wordpress-mysql
  41.         - name: WORDPRESS_DB_PASSWORD
  42.           valueFrom:
  43.             secretKeyRef:
  44.               name: mysql-pass
  45.               key: password
  46.         ports:
  47.         - containerPort: 80
  48.           name: wordpress
  49.         volumeMounts:
  50.         - name: wordpress-persistent-storage
  51.           mountPath: /var/www/html
  52.       volumes:
  53.       - name: wordpress-persistent-storage
  54.         hostPath:
  55.           path: /datamysqlwordpress
  56.           type: DirectoryOrCreate
复制代码
  1. kubectl apply -f mysql.yaml
  2. kubectl apply -f wordpress.yaml
复制代码
检察wordpress前端的service

  1. kubectl get svc -l app=wordpress
复制代码
  1. NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
  2. wordpress NodePort 10.110.119.68 <none> 80:30090/TCP 36s
  3. wordpress-mysql ClusterIP None <none> 3306/TCP 43s
复制代码
欣赏器访问http://node_ip:30090


免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

拉不拉稀肚拉稀

金牌会员
这个人很懒什么都没写!
快速回复 返回顶部 返回列表