首页 > CMS教程 > WordPress > 正文

官方例子:k8s轻松跑起一个wordpress

藏色散人
发布: 2021-11-24 16:02:53
转载
3704人浏览过

下面由wordpress教程栏目给大家介绍关于k8s 部署wordpress 官方例子方式,希望对需要的朋友有所帮助!

k8s 部署wordpress 官方例子方式

要使用k8s跑起一个wordpress说容易也容易,说难也难 难点是对基础要求比较高,涉及到Service,persistentVolumeClaim,volumes

容易是在于官方有现成的例子(https://kubernetes.io/docs/tutorials/stateful-application/mysql-wordpress-persistent-volume/)

按照教程,只需要几行代码就可以搞定

首先,创建一个 kustomization.yaml 文件 内容如下

secretGenerator:
  - name: mysql-pass
    literals:
      - password=123456
resources:
  - mysql-deployment.yaml
  - wordpress-deployment.yaml
登录后复制
# 下载两个配置文件
curl -LO https://k8s.io/examples/application/wordpress/mysql-deployment.yaml
curl -LO https://k8s.io/examples/application/wordpress/wordpress-deployment.yaml
# 最后运行
kubectl apply -k .
# 查看暴露出来的IP
kubectl get services wordpress
登录后复制

关于 kustomize

简单说一个工具,减少维护多套环境yaml的工作量

kustomize 解决的痛点

一般应用都会存在多套部署环境:开发环境、测试环境、生产环境,多套环境意味着存在多套 K8S 应用资源 YAML。而这么多套 YAML 之间只存在微小配置差异,比如镜像版本不同、Label 不同等,而这些不同环境下的YAML 经常会因为人为疏忽导致配置错误。再者,多套环境的 YAML 维护通常是通过把一个环境下的 YAML 拷贝出来然后对差异的地方进行修改。一些类似 Helm 等应用管理工具需要额外学习DSL 语法。总结以上,在 k8s 环境下存在多套环境的应用,经常遇到以下几个问题:

如何管理不同环境或不同团队的应用的 Kubernetes YAML 资源 如何以某种方式管理不同环境的微小差异,使得资源配置可以复用,减少 copy and change 的工作量 如何简化维护应用的流程,不需要额外学习模板语法 Kustomize 通过以下几种方式解决了上述问题:

kustomize 通过 Base & Overlays 方式(下文会说明)方式维护不同环境的应用配置 kustomize 使用 patch 方式复用 Base 配置,并在 Overlay 描述与 Base 应用配置的差异部分来实现资源复用 kustomize 管理的都是 Kubernetes 原生 YAML 文件,不需要学习额外的 DSL 语法

注意

由于官方中使用service类型是LoadBalancer,这个只有部署到公有云上才有效,如果你使用自己搭建的k8s, 可以使用NodePort的service 提供一个参考的例子

apiVersion: v1
kind: Service
metadata:
  name: service-wordpress
  labels:
    app: wordpress
spec:
  selector:
    app: wordpress
    tier: frontend
  type: NodePort # service类型
  ports:
    - port: 80 # 默认情况下,为了方便起见,`targetPort` 被设置为与 `port` 字段相同的值。
      nodePort: 30012 # 指定绑定的node的端口(默认的取值范围是:30000-32767), 如果不指定,会默认分配
      targetPort: 80
登录后复制

以上就是官方例子:k8s轻松跑起一个wordpress的详细内容,更多请关注php中文网其它相关文章!

WPS零基础入门到精通全套教程!
WPS零基础入门到精通全套教程!

全网最新最细最实用WPS零基础入门到精通全套教程!带你真正掌握WPS办公! 内含Excel基础操作、函数设计、数据透视表等

下载
相关标签:
来源:juejin网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号