Kubernetes集群二进制部署(四)——部署k8s网站web页面

介绍

本次仅部署K8S的web网站页面,具体K8S群集部署已搭建完成。详见:

Kubernetes集群二进制部署(一)——Etcd数据库群集功能部署、flannel网络组建

Kubernetes集群二进制部署(二)——单master集群

Kubernetes集群二进制部署(三)——多master集群

yaml文件分享

百度网盘链接:https://pan.baidu.com/s/17ZJOq1rFKnDI3WeduG6VrA
提取码:pxvz

一、创建资源

创建资源的两种方式

方法一:使用命令直接创建

kubectl run --images=镜像名

方法二:使用yaml文件创建(需要下载yaml文件)

kubectl create -f  yaml文件

本次将使用yaml文件进行创建

在master01上操作

#创建dashboard工作目录

[root@master01 k8s]# mkdir dashboard
[root@master01 k8s]# cd dashboard

#拷贝官方的yaml文件(此处已经提前下载好,直接拷贝至dashboard工作目录)

官网下载地址:https://github.com/kubernetes/tree/master/cluster/addons/dashboard
在这里插入图片描述

1、 创建rdac控制管理资源(kind:Role)

① 创建

  • -f:以文件(yaml文件)的形式创建资源
[root@master01 dashboard]# kubectl create -f  dashboard-rbac.yaml

② 查看yaml文件,查看name名称及namespace命名空间

[root@master01 dashboard]# vim dashboard-rbac.yaml

在这里插入图片描述

里面创建的资源kind是Role角色

③ 查看Role角色资源

  • -n:指向命名空间
[root@master01 dashboard]# kubectl get Role -n kube-system

在这里插入图片描述

2、 创建secret安全资源(kind:Secret)

① 创建

[root@master0
### Gitee CI/CD Pipeline for Vue Project Deployment #### 配置 `.gitlab-ci.yml` 文件实现自动化部署 对于在Gitee上的Vue项目,配置CI/CD流水线的关键在于编写`.gitlab-ci.yml`文件。此文件定义了不同阶段的任务,包括构建、测试以及最终的部署操作[^1]。 ```yaml image: node:lts stages: - build - deploy cache: paths: - node_modules/ build_vue_project: stage: build script: - npm install - npm run build artifacts: paths: - dist/ deploy_to_production: stage: deploy only: - master script: - echo "Deploying to production..." - 'curl -H "Authorization: Bearer $TOKEN" -F file=@dist/index.html https://your-server.com/upload' ``` 上述脚本展示了如何通过NPM安装依赖并打包Vue应用,在成功完成后会触发部署动作。这里假设有一个API端点用于上传编译后的HTML文件作为示例[^4]。 #### 使用 Jenkins-Pipeline 自动化部署Kubernetes (K8S) 另一种方法是借助Jenkins管道工具配合Docker镜像完成更复杂的场景——比如将应用程序容器化并通过Kubernetes集群管理服务实例。为此需准备一个适合前端应用的基础NGINX Dockerfile: ```dockerfile FROM nginx RUN rm -rf /usr/share/nginx/html/* COPY ./dist /usr/share/nginx/html EXPOSE 80 CMD ["nginx", "-g", "daemon off;"] ``` 接着可以在Jenkins中创建一个多分支Pipeline工程,并指定其读取位于仓库根目录下的`Jenkinsfile`来进行持续集成工作流控制[^5]。 #### 构建多层架构优化性能 考虑到生产环境中的效率问题,可以采用分层方式制作Docker镜像以减少体积和加速传输速度。下面是一个针对Java项目的例子,虽然适用于不同的编程语言和技术栈,但概念相同:先在一个临时环境中编译源码生成可执行包;再切换到精简版运行时映像里加载该二进制文件[^3]。 ```dockerfile # Build Stage FROM maven AS builder WORKDIR /app COPY pom.xml . COPY src ./src RUN mvn clean package -DskipTests # Final Stage FROM openjdk:alpine WORKDIR /app COPY --from=builder /app/target/*.jar app.jar ENTRYPOINT ["java","-jar","/app/app.jar"] ``` 尽管这段代码片段主要面向后端开发人员,但对于任何类型的Web应用来说都是有价值的实践指南。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值